[Setting | Ubuntu] Docker 설치

우분투 환경에 Docker 설치 방법을 정리한다.
docker docs


작성일 : 2022-06-08
OS : Ubuntu 22.04 LTS
Docker : 20.10.17

1> Uninstall old version

sudo apt-get remove docker docker-engine docker.io containerd runc

2> Set up the repository

# package index update
sudo apt-get update
# install require package
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
# add GPG key
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# set up repository
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3> Install Docker

최신 버전 (20.10.17) 설치

sudo apt-get update

# 설정된 저장소에서 설치가능한 목록확인
sudo apt-cache madison docker-ce
------------------------------------------------------------------------
 docker-ce | 5:20.10.17~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.16~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.15~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.14~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:20.10.13~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
root@opendocs:/etc/apt/keyrings# sudo apt-get update
--------------------------------------------------------------------------

# 특정 버전으로 설치
sudo apt-get install docker-ce=5:20.10.17~3-0~ubuntu-jammy docker-ce-cli=5:20.10.17~3-0~ubuntu-jammy containerd.io docker-compose-plugin

[Tip | Ubuntu] 노트북 닫아도 서비스 유지

개발용으로 노트북에 서버를 설치하였으나 닫으면 절전모드가 되어 버리는 경우 아래와 같은 방법으로 서버를 유지할 수 있다.


작성일 : 2022-06-08

1> logind.conf 설정파일 변경

sudo vi /etc/systemd/logind.conf
# ASIS
#HandleLidSwitch=suspend
#LidSwitchIgnoreInhibited=yes
# TOBE
HandleLidSwitch=ignore
LidSwitchIgnoreInhibited=no

2> system-logind 서비스 재시작

sudo service systemd-logind restart

[Setting | Docker] PostgreSQL설치

도커에 PostgreSQL을 설치하는 방법을 정리한다.


작성일 : 2022-06-07

1> 최신 안정화 릴리즈 확인

PostgreSQL 링크

DockerHub > Postgres 링크


2> 컨테이너 설치 및 실행

# 마운트 폴더 생성
sudo mkdir /home/opendocs/postgres
sudo mkdir /home/opendocs/postgres/data

# 네트워크 확인 & opdnet IP 대역확인
sudo docker network ls
# - 없을 경우 생성
sudo docker network create --gateway 172.20.0.1 --subnet 172.20.0.0/21 opdnet
# - 네트워크 확인
sudo docker inspect opdnet
# ------------------------------------------
# IPAM > Config > Gateway와 같은대역 IP 지정해야함
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.20.0.0/16",
                    "Gateway": "172.20.0.1"
                }
            ]
        },
# Containers에 사용중인 IP는 중복되지 않아야함
        "Containers": {
            "d4c422b0ceb65ab5f45e2efe2c7da3137b7d66a985f3f222b1b974763529ea7c": {
                "Name": "sample",
                "EndpointID": "e0dc778cf7fe452b45c5bec1737050395c553d764de75f3a88aef565fe00166d",
                "MacAddress": "02:42:ac:11:00:02",
                "IPv4Address": "172.20.0.2/16",
                "IPv6Address": ""
            }
        },
# ------------------------------------------

# 컨테이너 설치 및 실행 (고정IP지정)
sudo docker run --detach \
  --network opdnet --ip 172.20.0.104 \
  --name postgres \
  --volume /home/opendocs/postgres/data:/var/lib/postgresql/data \
  -p 5432:5432 \
  -e POSTGRES_PASSWORD=qwer1234 \
  postgres:14.3

3> DB 접속 확인

DBeaver 툴을 통해 접속여부확인