
Docker 위에 오픈소스 프로젝트 관리 시스템인 Redmine과 이를 받쳐줄 데이터베이스 MySQL을 설치한다.
아래의 설명은 WSL2 환경에서 진행하였고, 실제 Linux 환경에서 같은 방법으로 진행하여 정상 동작 확인하였습니다.
1. Docker 설치
# yum-utils 패키지 설치
sudo yum install -y yum-utils
# yum 설정에 Docker repo 추가
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# Docker, CLI Community Edition 및 리눅스 컨테이너 런타임 설치
sudo yum install docker-ce docker-ce-cli containerd.io
# 이후 설치 확인
systemctl status docker.service
docker --version
# 부팅시 Docker 실행 등록
sudo systemctl enable docker.service
# Docker 실행
sudo systemctl start docker.service

2. Docker-compose 설치
# Docker-compose 설치
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 실행 권한 부여
sudo chmod +x /usr/local/bin/docker-compose
# 설치 확인
docker-compose --version

3. Redmine과 MySQL Docker Image Pull(다운로드)
# Redmine
sudo docker pull redmine
# MySQL
sudo docker pull mysql:5.7
# 이미지 확인
docker images

4. Docker-compose.yml 파일 작성
# Docker 버전을 확인후 Docker-compose.yml 작성에 참고해 주세요
sudo docker version --format '{{.Server.Version}}'
# 작성
sudo vi docker-compose.yml
위의 명령어로 Docker 버전을 확인한 후, 공식 사이트에서 Docker-compose.yml 작성 양식을 참고하세요.

Redmine의 첨부파일, MySQL의 데이터를 volume 지정하여 차후 이관에 용이하도록 구성하였습니다.
5. 실행
# Docker-compose 실행(일반) - 로그가 Foreground로 찍힘
docker-compose up
# Docker-compose 실행(데몬) - 데몬 형태로 실행
docker-compose up –d

6.1 오류 1 - MySQL Connection 오류
Authentication plugin 'caching_sha2_password' cannot be loaded: The specified module could not be found.
원인 : Redmine -> MySQL 접속 시 비밀번호 해싱이 문제가 생기는 것으로 보임.
해결법 : DB 접속 후 아래 SQL문 실행
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'redmine';
COMMIT;
6.2 오류 2 - Redmine을 80:3000으로 설정했을 때 Permission 문제
원인 : 유저가 Docker Group 참여자가 아닐 시에 권한 문제로 Well Known Port인 80번을 사용할 수 없음.
해결법 : 유저를 Docker Group으로 포함시키고 다시 실행
# 그룹 추가
sudo usermod -a -G docker $USER
# !중요! USER 재 로그인
# Docker-compose 실행
docker-compose up –d
'프로그래밍 > Linux.' 카테고리의 다른 글
[Docker] DIND 빌드가 너무 느린 경우 시도해 볼만한 방법 (0) | 2023.06.22 |
---|---|
[Docker] Docker 이미지 생성 및 자동 배포(FastAPI 와 Gitlab CI/CD를 곁들인) (0) | 2022.07.18 |
[WSL2] WSL2 에 설치된 Linux 배포판 삭제하기 (0) | 2021.05.02 |
[WSL2] WSL2 환경에서 Linux 배포판 설치하기 (0) | 2021.05.02 |
댓글