반응형
나는 도커를 통해 redmine을 설치 하였다.
version: '3.1'
services:
mysql:
container_name: redmine_mysql
image: mysql:5.7
restart: always
# networks:
# - redmine_network
ports:
- 3306:3306
environment:
MYSQL_ROOT_PASSWORD: redmine
MYSQL_DATABASE: redmine
volumes:
- redmine_mysql_data:/var/lib/mysql
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
redmine:
container_name: redmine
image: redmine
restart: always
# networks:
# - redmine_network
ports:
- 3000:3000
environment:
REDMINE_DB_MYSQL: mysql
REDMINE_DB_DATABASE: redmine
REDMINE_DB_PASSWORD: redmine
REDMINE_DB_ENCODING: utf8
# REDMINE_NO_DB_MIGRATE: true
volumes:
- redmine_data:/usr/src/redmine/files
- redmine_plugin_data:/usr/src/redmine/plugins
# - /home/kyd/workspace/docker/redmine/volumn/redmine/themes:/usr/src/redmine/public/themes
depends_on:
- mysql
# condition: service_healthy
volumes:
redmine_mysql_data:
redmine_data:
redmine_plugin_data:
# networks:
# redmine_network:
# driver: bridge
도커를 실행하자
# docker-compose up -d
초기 아이디와 비밀번호는
admin / admin
으로 설정되어있다
로그인 이후 프로젝트 생성 후
설정페이지로 가서 저장소 설정을 해주자.
$ docker exec -it redmine /bin/bash
// ssh키를 등록하자.
// 이후 github에 redmine pub key를 설정하자.
# ssh-keygen
// vcs 폴더를 설정한다. 편한 위치로 설정하자
# cd /usr/src/redmine
# mkdir git
// git clone 시 --mirror 옵션을 필수로 입력한다.
# cd /usr/src/redmine/git
# git clone --mirror git@git
저장소 경로를 위의 clone 경로로 잘 설정해주고 만들기를 클릭하면 끝이난다.
마지막으로 깃에 새로운 소스가 푸시되어도 redmine에서 이를 알아낼 방법이 없기에
redmine에서 주기적으로 git fetch를 해주어야 한다.
#!/bin/bash
REPOS=`ls -d /usr/src/redmine/git/*`
for repo in $REPOS
do
cd $repo
git fetch
done
해당 스크립트를 redmine 컨테이너 안에 입력하고
호스트 os 에서 cron을 통해 해당 스크립트를 주기적으로 실행시켜 동기화 작업을 시켜준다.
$ sudo crontab -e
* * * * * docker exec redmine /bin/bash /root/fetch.sh
반응형
'개발' 카테고리의 다른 글
Redmine 운영 3 - agile (0) | 2020.12.07 |
---|---|
Redmine 운영 2 - Slack 연동 (0) | 2020.12.07 |
Jenkins (0) | 2020.11.23 |
Docker 시작부터 배포까지 (0) | 2020.09.09 |
Thread를 올바르게 생성, 시작, 중단하는 방법(feat. deamon thread와 자바런타임 메모리 공유) (0) | 2020.08.23 |