AWS EC2 AmazonLinux2 docker 호스트의 초기 설정
하고 싶은 일
AmazonLinux2에 다음 설정을 정리하여 실행한다.
git
docker
docker-compose
최신 버전 설치 원래 명령
별칭
도커
dcr
docker-compose
ddc
명령
sudo yum update -y
sudo cp /etc/localtime /etc/localtime.org
sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
sudo mv /etc/sysconfig/clock /etc/sysconfig/clock.bk
sudo echo -e 'ZONE='Asia/Tokyo'\nUTC=true' > /etc/sysconfig/clock
sudo mv /etc/sysconfig/i18n /etc/sysconfig/i18n.bk
sudo echo 'LANG=ja_JP.UTF-8' > /etc/sysconfig/i18n
export LANG=ja_JP.utf8
export LC_ALL=ja_JP.utf8
sudo yum install -y git jq
sudo amazon-linux-extras install -y docker
sudo service docker start
sudo chkconfig docker on
sudo usermod -a -G docker ec2-user #本番環境などでは危険だからやらないでね!
compose_version=$(curl https://api.github.com/repos/docker/compose/releases/latest | jq .name -r)
output='/usr/local/bin/docker-compose'
sudo curl -L https://github.com/docker/compose/releases/download/$compose_version/docker-compose-$(uname -s)-$(uname -m) -o $output
sudo chmod +x $output
echo "alias dcr='docker'" >> ~/.bashrc
echo "alias ddc='docker-compose'" >> ~/.bashrc
source ~/.bashrc
# mod001: 2020-02-07
sudo cat - << EOS >> /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOS
덤: root에서도 docker-compose를 사용하는 경우의 설정
sudo visudo
에서 sudoers
편집 화면을 엽니다.
# :/usr/local/binをおしりに追加
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
대로 편집하고 저장.
그리고 다음 명령을 실행합니다.
sudo sh -c "echo alias dcr='docker' >> /root/.bashrc"
sudo sh -c "echo alias ddc='docker-compose' >> /root/.bashrc"
추가
새로운 개선 재료를 구입하면 수시로 갱신합니다.
mod001
자세한 내용은 생략하지만,
Docker 호스트가 CentOS 계열인 경우 Docker의 구성 파일 daemon.json에 이 덤프를 추가하지 않으면 큰 Docker 이미지를 처리할 수 없거나 이미지 용량이 한계를 넘으면 동작 불량의 원인이 되어 버리는 것 같습니다.
(시행착오로 몇번이나 no-cache 빌드 하고 있으면 호스트가 정지해 버리는 것도, 이것으로 해결할 수 있을까…?)
덧붙여서 Docker 설치 직후는 daemon.json 자체 존재하지 않거나 할지도.
sudo cat - << EOS >> /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOS
※이 공격적인 cat
의 쓰는 방법은 이쪽을 참고로 했습니다!
htps : // 코 m / 타케 4s5 네 / MS / 에 207 네 4fb04385 아 9952
sudo yum update -y
sudo cp /etc/localtime /etc/localtime.org
sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
sudo mv /etc/sysconfig/clock /etc/sysconfig/clock.bk
sudo echo -e 'ZONE='Asia/Tokyo'\nUTC=true' > /etc/sysconfig/clock
sudo mv /etc/sysconfig/i18n /etc/sysconfig/i18n.bk
sudo echo 'LANG=ja_JP.UTF-8' > /etc/sysconfig/i18n
export LANG=ja_JP.utf8
export LC_ALL=ja_JP.utf8
sudo yum install -y git jq
sudo amazon-linux-extras install -y docker
sudo service docker start
sudo chkconfig docker on
sudo usermod -a -G docker ec2-user #本番環境などでは危険だからやらないでね!
compose_version=$(curl https://api.github.com/repos/docker/compose/releases/latest | jq .name -r)
output='/usr/local/bin/docker-compose'
sudo curl -L https://github.com/docker/compose/releases/download/$compose_version/docker-compose-$(uname -s)-$(uname -m) -o $output
sudo chmod +x $output
echo "alias dcr='docker'" >> ~/.bashrc
echo "alias ddc='docker-compose'" >> ~/.bashrc
source ~/.bashrc
# mod001: 2020-02-07
sudo cat - << EOS >> /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOS
sudo visudo
에서
sudoers
편집 화면을 엽니다.# :/usr/local/binをおしりに追加
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
대로 편집하고 저장.
그리고 다음 명령을 실행합니다.
sudo sh -c "echo alias dcr='docker' >> /root/.bashrc"
sudo sh -c "echo alias ddc='docker-compose' >> /root/.bashrc"
추가
새로운 개선 재료를 구입하면 수시로 갱신합니다.
mod001
자세한 내용은 생략하지만,
Docker 호스트가 CentOS 계열인 경우 Docker의 구성 파일 daemon.json에 이 덤프를 추가하지 않으면 큰 Docker 이미지를 처리할 수 없거나 이미지 용량이 한계를 넘으면 동작 불량의 원인이 되어 버리는 것 같습니다.
(시행착오로 몇번이나 no-cache 빌드 하고 있으면 호스트가 정지해 버리는 것도, 이것으로 해결할 수 있을까…?)
덧붙여서 Docker 설치 직후는 daemon.json 자체 존재하지 않거나 할지도.
sudo cat - << EOS >> /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOS
※이 공격적인 cat
의 쓰는 방법은 이쪽을 참고로 했습니다!
htps : // 코 m / 타케 4s5 네 / MS / 에 207 네 4fb04385 아 9952
sudo cat - << EOS >> /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOS
Reference
이 문제에 관하여(AWS EC2 AmazonLinux2 docker 호스트의 초기 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yagrush/items/e85d2da1b0ef9997fa07텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)