OS/CentOS
[CentOS 7] CentOS 7에서 Docker 및 Docker Compose 설치 방법
miiingo
2021. 12. 7. 11:22
반응형
■ 참고 사이트
- Docker Docs | Install Docker Engine on CentOS
- Docker Docs | Post-installation steps for Linux
- Docker Docs | Install Docker Compose
■ Docker 및 Docker Compose 설치
● 스크립트로 설치
현재 일자 기준(2021.11.29) 가장 최신 버전의 Docker 및 Docker Compose를 설치합니다.
- Docker: 20.10.11
- Docker Compose: 1.29.2
※ Docker Compose의 경우, v2.1.1이 가장 최신 버전이긴 하지만 2.X는 기본 커맨드 자체가 달라졌기 때문에 1.x의 가장 최신 버전인 1.29.2로 설치함
# Docker(20.10.11) 설치
curl -fsSL https://get.docker.com/ | sudo sh
sudo systemctl start docker
sudo systemctl enable docker
docker version
# docker 그룹에 scom 계정 추가
sudo groupadd docker
sudo usermod -a -G docker scom
docker version
# 그래도 안되면 아래 chmod 명령도 실행
# chmod 666 /var/run/docker.sock
# Docker Compose(1.29.2) 설치
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version
● Docker 기본 저장소 변경
Docker의 기본 저장소는 /var/lib/docker입니다. 이 경로에 Docker 이미지나 로그, 컨테이너 등 모든 데이터들이 저장되기 때문에 별도의 마운트 장소로 변경해주는 것이 좋습니다.
여기에서는 /data01/docker로 변경해줍니다.
# Docker 기본 저장소 위치 확인
docker info | grep "Docker Root Dir"
# => Docker Root Dir: /var/lib/docker
# 저장소 위치 변경
sudo systemctl stop docker
mkdir -p /data01/docker
sudo vi /etc/docker/daemon.json
# /etc/docker/daemon.json 파일에 다음 내용 추가
# ----------------------------------------------------------------------- #
{ "graph": "/data01/docker" }
# ----------------------------------------------------------------------- #
sudo systemctl start docker
# Docker 기본 저장소 위치 변경 확인
docker info | grep "Docker Root Dir"
# => Docker Root Dir: /data01/docker
● iptables 설정
docker info 명령어를 실행했을 때, 다음과 같은 경고 메세지가 출력되는 경우가 있습니다.
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
이는 bridge 네트워크를 통해 송수신되는 패킷이 iptables 설정을 우회한다는 의미입니다.
따라서 iptables 설정을 추가해주면 됩니다.
# iptables 설정 추가
sudo vi /etc/sysctl.conf
# /etc/sysctl.conf 파일에 다음 내용 추가
# ----------------------------------------------------------------------- #
# Docker를 위한 설정 추가
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
# ----------------------------------------------------------------------- #
sudo sysctl -p
반응형