본문 바로가기

Docker

Docker 실습(Ubuntu환경)


Ubuntu 환경에서 Docker 실습을 해보자

1. 도커 설치 전 기본 설치 2. 도커 설치 및 Potainer 설치 3. WordPress를 Docker로 설치하기


 

 

1. 도커 설치 전 기본 설치

 

 

apt 패키지 디렉토리를 업데이트하고 apt가 HTTPS를 통해 저장소를 사용할 수 있도록 패키지를 설치

 

sudo apt update && sudo apt upgrade sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

 

Docker의 공식 GPG 키를 추가합니다. curl 도구를 사용하여 GPG 키를 명령에 전달

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

// ok가 나오면 다음으로 넘어간다

 

 

 

curl 도구로 Docker apt 저장소를 추가

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

2. 도커 및 Portainer설치

 

 

도커 설치

sudo apt update && sudo apt install docker-ce docker-ce-cli containerd.io

 

 

 

도커 서비스를 부팅될 때마다 실행되도록 설정하고 서비스를 시작

sudo systemctl enable docker && service docker start

 

 

 

도커가 실행 중인지 확인

service docker status

// active 상태이면 다음으로 넘어간다

 

 

 

portainer 설치

sudo mkdir -p /data/portainer 
sudo docker run --name portainer -p 9000:9000 -d --restart always -v /data/portainer:/data -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

// poratainer에 접속하기 위한 포트를 9000번으로 설정하였다

 

portainer란? 

클라우드 환경에서 컨테이너를 쉽게 이동하고 배포할 수 있도록 하는 도구이다

 

 

 

portainer 동작 확인

netstat -na | less

 


 

3. WordPress를 Docker로 설치하기

 

 

vim 설치

sudo apt install vim

 

 

Docker-compose 설치

sudo apt install docker-compose
cd /home/(계정)

 

 

Docker-compose란?

     복수 개의 컨테이너를 실행시키는 도커 애플리케이션이 정의를 하기 위한 툴이다

     Compose를 사용하면 YAML 파일을 사용하여 애플리케이션의 서비스를 구성할 수 있다

     docker-compose.yml 에서 앱을 구성할 수 있는 서비스를 정의하고, 하나의 환경에서 실행할 수 있게 한다

     docker-compose up 명령어를 실행하여 Compose를 시작시키고 전체의 앱을 실행시킨다

 

 

 

 

YAML파일에 WordPress 이미지 복사

hub.docker.com에서 WordPress 이미지를 복사하고 docker-compose.yml 파일에 복사한 이미지를 붙여넣는다

(WordPress에 접속하기 위한 포트번호는 8080으로 설정하였다)

sudo vi docker-compose.yml 

 

 

이미지는 아래와 같다

version: '3.1'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:

 

 

 

파일에 붙여넣기가 완료되었으면 Compose를 시작시키고 전체의 앱을 실행

sudo docker-compose up -d

 

 

 

 

WordPress 홈페이지 접속

"httP://가상머신IP:설정한 포트번호/" 입력하여 홈페이지에 접속해본다