아래로 당겨서 새로고침

무료 프로젝트 관리 툴 Redmine 구성

date
Apr 13, 2023
thumbnail
Columns.png
gsc
Done
public
public
slug
set-redmine
author
tags
Docker
Server
summary
Docker를 이용하여 Redmine을 사용해보자
type
Post
updatedAt
Dec 29, 2023 05:11 AM

Introdution

Docker를 이용하여 Redmine / MySQL 환경을 가진 프로젝트 관리 페이지를 구성하는 방법을 설명한다. 새로 시작하게 될 프로젝트에서 해당 환경을 구성할 예정으로, 테스트하며 설치했던 방법을 기록하고자 한다.

환경

운영체제 - Window10 실행환경 - docker (20.10.21) - docker-compose (2.13.0) Docker Images - redmine:bullseye - mysql:5.7

Redmine 이란?

notion image
RedmineJira와 같은 웹 기반 프로젝트 관리 도구이다. 이슈 트래킹, 버그 추적, 시간 추적, 프로젝트 문서화 등 다양한 기능을 제공하며, 플러그인을 사용하여 기능을 확장하거나 사용자 지정할 수 있어서, 다양한 프로젝트의 요구사항에 맞게 커스터마이징이 가능하다. 이러한 Redmine은 다양한 기능들이 있기 때문에 프로젝트 관리의 효율성을 높일 수 있다.
프로젝트를 더욱 효율적으로 관리하고자 하는 사용자들에게 추천할 만한 도구이다.
가장 큰 장점은 오픈소스이며 ‘무료’ 이다. 😎👌🏻

구성하기

사전 준비

  • Docker 설치
  • Docker-Compose 설치
위 항목들을 사전에 준비하고, 레드마인의 설치 및 구동,DB 연결까지 설명한다. 기본적으로 Windows의 PowerShell을 기준으로 설명할 것 이다.

도커 이미지 다운로드

docker의 pull 명령어를 통해 docker hub에서 이미지를 받아온다.

redmine 이미지

  • 이미지 다운로드 (bullseye 버전)
# docker hub에서 pull 명령어를 통해 # docker pull {이미지}:{태그} # bullseye 태그 명으로 받아온다. docker pull redmine:bullseye
 

MySQL 이미지

  • 이미지 다운로드 (5.7 버전)
# mysql 5.7 버전의 이미지를 받아온다. docker pull mysql:5.7
 

다운로드 이미지 확인

명령어를 통해 아래와 같이 이미지 다운로드 상태를 알 수 있다.
notion image
# 이미지 확인 docker images

Docker-Compose

docker-compose.yml 작성

Docker Compose에 대한 내용은 생략하고 이어서 진행하겠다.
redmine을 관리할 프로젝트 경로에 docker-compose.yml 파일을 생성하고, 아래와 같이 내용을 작성한다.
# docker-compose.yml version: '20.10.21' services: redmine: image: redmine restart: always container_name: redmine ports: - "3000:3000" environment: REDMINE_DB_MYSQL: db REDMINE_DB_PASSWORD: redmine REDMINE_DB_DATABASE: redmine REDMINE_DB_ENCODING: utf8 volumes: - ./redmine/files:/usr/src/redmine/files - ./redmine/plugins:/usr/src/redmine/plugins - ./redmine/themes:/usr/src/redmine/public/themes db: image: mysql restart: always container_name: db ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: redmine MYSQL_DATABASE: redmine volumes: - ./mysql:/var/lib/mysql command: - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci
docker-compose의 기본적인 내용으로 작성하였다.
 
✨Tip. 추가적으로, volumes의 경로를 설정하여 추후 데이터를 관리할 수 있도록 저장 경로를 작성하였다.
#volumes의 추가 설명 volumes: - ./redmine/files:/usr/src/redmine/files # - {로컬PC 연결할 경로}:{redmine의 파일저장 경로} #./redmine/files : docker-compose.yml을 실행한 동일 위치에 데이터 저장 # /usr/src/redmine/files 이미지로 실행된 redmine에 업로드 된 file의 경로 # 즉, # redmine에 업로드된 파일을 컨테이너 밖 로컬PC 경로에도 저장한다.
 

docker-compose 실행

아래 명령어를 실행하여 redminemysql 컨테이너를 실행시킨다. 명령어는 docker-compose.yml 경로에서 실행한다.
# 실행 방법은 아래에서 택1 # 일반 실행 docker-compose up # 백그라운드 실행 (데몬) docker-compose up -d # 컨테이너에 접속한 상태에서 실행상태를 유지하며 나올때는 # CTRL + P , CTRL + Q 순서로 단축키 입력하여 빠져 나온다.
 

명령어 관리

명령어
용도
docker ps -a
컨테이너 리스트 출력
docker stop {컨테이너의 NAMES명}
컨테이너 중단
docker rm {컨테이너의 NAMES명}
컨테이너 삭제
docker images
이미지 목록 출력
docker rmi {레파지토리명:태그명}
이미지 제거 예) docker rmi redmine:bullseye
docker exec -it {컨테이너 NAMES명} bash
백그라운드로 실행중인 컨테이너 접속
 

결과 확인

위 설정한 내용으로 localhost:3000 접속하면 redmine이 실행된것을 확인할 수 있다.
최초 구성후 초기화면
최초 구성후 초기화면
최초 관리자 계정은 admin / admin 으로 접속 가능하며, 로그인 후 비밀번호 및 프로젝트 환경을 구성한다.
 

내부망(오프라인)에 적용

  1. docker save 명령어를 이용하여 Docker Imagetar 파일로 변환
docker save {이미지명} > {파일명}.tar # docker save ubuntu:18.0.4 > ubuntu.18.0.4.tar
 
  1. tar파일을 내부망(오프라인)으로 옮기고 다음 명령어로 docker Image를 등록한다.
docker load -i ubuntu.18.0.4.tar
 

마무리

레드마인을 사용해본적이 없어, 실제로 관리 항목들을 설정하는 방법은 설명하지 않겠다. 쉽게 구성해서 돈 들이지 말고 간단하게 프로젝트 관리 툴을 사용해보자!
 
잠깐 만져봤는데 사용자 계정부여, 권한 등 초기 설정이 필요했다. 어렵진 않으니 천천히 살펴보고 프로젝트에 적용해 볼 예정이다. 😋
 

참고

 

긴 글 읽어주셔서 감사합니다.
오탈자 및 내용 피드백은 언제나 환영합니다.

#Docker#Server