Windows10에 Docker Compose로 Redmine 도입
18709 단어 Redminedocker-compose도커Windows
목적
Windows10 환경에 Docker를 이용하여 Redmine, Gitlab, Jenkins의 환경 세트를
반복 구축할 수 있도록 실제로 시도한 내용을 남겨 둡니다.
기재 범위
아래 전제 조건에 따라 Docker Desktop for Windows를 설치하고
Docker Compose를 이용하여 Redmine을 도입하는 곳까지를 기재합니다.
시험에 있어서, 이하 사이트를 참고로 했습니다.
아래 전제 조건에 따라 Docker Desktop for Windows를 설치하고
Docker Compose를 이용하여 Redmine을 도입하는 곳까지를 기재합니다.
시험에 있어서, 이하 사이트를 참고로 했습니다.
전제 조건
사전 준비
Windows용 Docker Desktop을 설치하는 Windows 컴퓨터에 대해 Hyper-V 설정을 사용하도록 설정합니다.
Docker Desktop for Windows 설치
Docker Desktop for Mac and Windows | Docker
Windows PowerShell(관리자 권한) 시작
Windows PowerShell 시작은 다음 중 하나로 시작할 수 있습니다.
두 경우 모두 별도의 창에서 PowerShell이 시작됩니다.
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "Start-Process PowerShell.exe -Verb runas"
Start-Process PowerShell.exe -Verb runas
Docker 버전 확인
설치한 Docker 버전을 확인합니다.
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
PS C:\Users\xxxx> docker version
Client:
Cloud integration: 1.0.14
Version: 20.10.6
API version: 1.41
Go version: go1.16.3
Git commit: 370c289
Built: Fri Apr 9 22:49:36 2021
OS/Arch: windows/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.6
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 8728dd2
Built: Fri Apr 9 22:44:56 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Docker Compose 버전 확인
공식 사이트(일본어화): Docker-docs-ko/Docker-compose 에도 기재되어 있습니다만
Docker Desktop for Windows에는 Docker Compose가 일부에 포함되어 이미 설치되어 있습니다.
PS C:\WINDOWS\system32> docker-compose --version
docker-compose version 1.29.1, build c34c88b2
디렉토리 구성
이번 시도한 디렉토리 구성은 다음과 같이 작성하여 컨테이너 파기와 함께 데이터가 손실되지 않도록
외부 마운트 대상 (컨테이너 외부)으로 "data"디렉토리는 별도로 나뉩니다.
C:\DOCKER
└─my_prot01
docker-compose.yml
└─data
└─my_prot01
└─db
docker-compose.yml
AWS EC2에 Docker Compose로 Redmine 배포 작성시에 기재된 docoker-compose.yml의 내용을 Windows 용으로 수정하고 있습니다.
version: '3.9'
services:
redmine:
image: redmine:passenger
container_name: redmine
ports:
- 3000:3000
environment:
TZ: Asia/Tokyo
REDMINE_DB_MYSQL: mysql
REDMINE_DB_DATABASE: redmine
REDMINE_DB_USERNAME: redmine
REDMINE_DB_PASSWORD: redmine
REDMINE_DB_ENCODING: utf8
depends_on:
- mysql
restart: always
volumes:
- ../data/my_prot01/redmine/files:/usr/src/redmine/files
- ../data/my_prot01/redmine/redmine/log:/usr/src/redmine/log
- ../data/my_prot01/redmine/plugins:/usr/src/redmine/plugins
- ../data/my_prot01/redmine/redmine/public/themes:/usr/src/redmine/public/themes
mysql:
image: mysql:5.7
container_name: mysql
restart: always
environment:
TZ: Asia/Tokyo
MYSQL_ROOT_PASSWORD: devops
MYSQL_DATABASE: redmine
MYSQL_USER: redmine
MYSQL_PASSWORD: redmine
volumes:
- ../data/db:/var/lib/mysql
command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
docker-compose 명령을 실행하여 Docker 컨테이너(여러 개)를 백그라운드 시작
PS C:\docker\my_prot01> docker-compose up -d
Docker Compose is now in the Docker CLI, try `docker compose up`
Creating mysql ... done
Creating redmine ... done
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
PS C:\Users\xxxx> docker version
Client:
Cloud integration: 1.0.14
Version: 20.10.6
API version: 1.41
Go version: go1.16.3
Git commit: 370c289
Built: Fri Apr 9 22:49:36 2021
OS/Arch: windows/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.6
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 8728dd2
Built: Fri Apr 9 22:44:56 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0
공식 사이트(일본어화): Docker-docs-ko/Docker-compose 에도 기재되어 있습니다만
Docker Desktop for Windows에는 Docker Compose가 일부에 포함되어 이미 설치되어 있습니다.
PS C:\WINDOWS\system32> docker-compose --version
docker-compose version 1.29.1, build c34c88b2
디렉토리 구성
이번 시도한 디렉토리 구성은 다음과 같이 작성하여 컨테이너 파기와 함께 데이터가 손실되지 않도록
외부 마운트 대상 (컨테이너 외부)으로 "data"디렉토리는 별도로 나뉩니다.
C:\DOCKER
└─my_prot01
docker-compose.yml
└─data
└─my_prot01
└─db
docker-compose.yml
AWS EC2에 Docker Compose로 Redmine 배포 작성시에 기재된 docoker-compose.yml의 내용을 Windows 용으로 수정하고 있습니다.
version: '3.9'
services:
redmine:
image: redmine:passenger
container_name: redmine
ports:
- 3000:3000
environment:
TZ: Asia/Tokyo
REDMINE_DB_MYSQL: mysql
REDMINE_DB_DATABASE: redmine
REDMINE_DB_USERNAME: redmine
REDMINE_DB_PASSWORD: redmine
REDMINE_DB_ENCODING: utf8
depends_on:
- mysql
restart: always
volumes:
- ../data/my_prot01/redmine/files:/usr/src/redmine/files
- ../data/my_prot01/redmine/redmine/log:/usr/src/redmine/log
- ../data/my_prot01/redmine/plugins:/usr/src/redmine/plugins
- ../data/my_prot01/redmine/redmine/public/themes:/usr/src/redmine/public/themes
mysql:
image: mysql:5.7
container_name: mysql
restart: always
environment:
TZ: Asia/Tokyo
MYSQL_ROOT_PASSWORD: devops
MYSQL_DATABASE: redmine
MYSQL_USER: redmine
MYSQL_PASSWORD: redmine
volumes:
- ../data/db:/var/lib/mysql
command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
docker-compose 명령을 실행하여 Docker 컨테이너(여러 개)를 백그라운드 시작
PS C:\docker\my_prot01> docker-compose up -d
Docker Compose is now in the Docker CLI, try `docker compose up`
Creating mysql ... done
Creating redmine ... done
C:\DOCKER
└─my_prot01
docker-compose.yml
└─data
└─my_prot01
└─db
AWS EC2에 Docker Compose로 Redmine 배포 작성시에 기재된 docoker-compose.yml의 내용을 Windows 용으로 수정하고 있습니다.
version: '3.9'
services:
redmine:
image: redmine:passenger
container_name: redmine
ports:
- 3000:3000
environment:
TZ: Asia/Tokyo
REDMINE_DB_MYSQL: mysql
REDMINE_DB_DATABASE: redmine
REDMINE_DB_USERNAME: redmine
REDMINE_DB_PASSWORD: redmine
REDMINE_DB_ENCODING: utf8
depends_on:
- mysql
restart: always
volumes:
- ../data/my_prot01/redmine/files:/usr/src/redmine/files
- ../data/my_prot01/redmine/redmine/log:/usr/src/redmine/log
- ../data/my_prot01/redmine/plugins:/usr/src/redmine/plugins
- ../data/my_prot01/redmine/redmine/public/themes:/usr/src/redmine/public/themes
mysql:
image: mysql:5.7
container_name: mysql
restart: always
environment:
TZ: Asia/Tokyo
MYSQL_ROOT_PASSWORD: devops
MYSQL_DATABASE: redmine
MYSQL_USER: redmine
MYSQL_PASSWORD: redmine
volumes:
- ../data/db:/var/lib/mysql
command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci
docker-compose 명령을 실행하여 Docker 컨테이너(여러 개)를 백그라운드 시작
PS C:\docker\my_prot01> docker-compose up -d
Docker Compose is now in the Docker CLI, try `docker compose up`
Creating mysql ... done
Creating redmine ... done
PS C:\docker\my_prot01> docker-compose up -d
Docker Compose is now in the Docker CLI, try `docker compose up`
Creating mysql ... done
Creating redmine ... done
위의 명령을 실행할 때 볼륨에 지정한 디렉토리 권한에 대한 대화 상자가 표시되었습니다.
Share it를 선택(volumes 지정분만 표시)
컨테이너 상태 확인
PS C:\docker\my_prot01> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7ebd216d48c5 redmine:passenger "/docker-entrypoint.…" 24 minutes ago Up 23 minutes 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp redmine
f35646564e40 mysql:5.7 "docker-entrypoint.s…" 24 minutes ago Up 24 minutes 3306/tcp, 33060/tcp mysql
Redmine 방문
브라우저를 시작하고 http://localhost:3000에 액세스합니다.
아래와 같이 Redmine 화면이 표시되면 완료.
Redmine 최초 액세스 시
PS C:\docker\my_prot01> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7ebd216d48c5 redmine:passenger "/docker-entrypoint.…" 24 minutes ago Up 23 minutes 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp redmine
f35646564e40 mysql:5.7 "docker-entrypoint.s…" 24 minutes ago Up 24 minutes 3306/tcp, 33060/tcp mysql
브라우저를 시작하고 http://localhost:3000에 액세스합니다.
아래와 같이 Redmine 화면이 표시되면 완료.
Redmine 최초 액세스 시
다음 예정
Windows10에 Docker Compose로 Jenkins를 도입하는 기사를 투고 예정.
Reference
이 문제에 관하여(Windows10에 Docker Compose로 Redmine 도입), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/peanuts2013/items/7c1088f51138090bfb0f
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Windows10에 Docker Compose로 Redmine 도입), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/peanuts2013/items/7c1088f51138090bfb0f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)