레드마인 4.2.3 도커로 돌려보자.
구분 | 팁&트릭 |
---|---|
출처 | 내가작성 |
필자는 Postgresql이 미리 Docker로 실행되어 있어서 redmine이라는 데이터베이스를 생성한 후, 진행하였다.
리눅스는 CentOS7을 사용하였으며, Home디렉토리에 redmine폴더를 생성한 후, 들어가자.
구글에서 "Redmine Docker"로 검색하여 나온 레드마인 공식 Docker 홈페이지에서 Bullseye기반으로 동작하는 것을 찾아 실행하였다.
https://hub.docker.com/_/redmine
위 스크립트를 "Dockerfile"을 생성하여 저장한 후, 링크에서 4.2폴더로 들어가면 "Docker-Entrypoint.sh" 파일이 있는데 스크립트를 복사해서 동일한 이름으로 저장한다.
export IMAGE_NAME=redmine export SOURCE_VER=4.2 docker rmi -f $IMAGE_NAME:$SOURCE_VER docker build . --tag $IMAGE_NAME:$SOURCE_VER
위 코드를 복사해서 "build.sh" 파일로 저장한다.
export IMAGE_NAME=redmine export SOURCE_VER=4.2 docker rm -f $IMAGE_NAME docker run -d --name $IMAGE_NAME --net bridge --restart=always \ -v /usr/share/zoneinfo/Asia/Seoul:/etc/localtime:ro \ -e REDMINE_DB_POSTGRES=192.168.0.40 \ -e REDMINE_DB_PORT=33000 \ -e REDMINE_DB_USERNAME=postgres \ -e REDMINE_DB_DATABASE=redmine \ -e REDMINE_DB_PASSWORD=password \ -p 40080:3000 \ $IMAGE_NAME:$SOURCE_VER
위 코드를 복사해서 "run.sh" 파일로 저장한다.
환경정보 중 "REDMINE_DB_POSTGRES"와 "REDMINE_DB_PORT"는 각각 PostgreSQL Docker가 실행중인 호스트와 포트를 입력한다.
"REDMINE_DB_DATABASE"는 데이터베이스 이름, "REDMINE_DB_USERNAME"와 "REDMINE_DB_PASSWORD"는 각각 PostgreSQL의 사용자 이름과 패스워드를 입력한다. 포트는 Docker내부에서는 3000번 포트를 외부에서는 40080으로 매핑하였다.
"chmod +x *.sh"명령을 이용해서 실행권한을 준다.
docker빌드를 위해 "./build.sh" 명령으로 빌드한다.
"./run.sh" 명령으로 도커를 실행한다.
"docker logs -f redmine" 명령으로 제대로 실행되는지 확인한다.
정상적으로 실행하면 아래와 같이 로그가 표시된다.
== 20200826153402 AddTotpToUser: migrated (0.0008s) =========================== [2022-01-24 14:10:24] INFO WEBrick 1.6.1 [2022-01-24 14:10:24] INFO ruby 2.7.5 (2021-11-24) [x86_64-linux] [2022-01-24 14:10:24] INFO WEBrick::HTTPServer#start: pid=1 port=3000
실제 접속은 192.168.0.40:40080으로 접속하면 접속이 된다.