iT邦幫忙

3

【淺談 Docker 基礎】Redmine 篇:簡易架設

Redmine

Redmine 是一個開源(Open Source)的項目管理系統,相信很多人早已對它不陌生。它的優點非常多,無論是免費、多國語系、角色管理、權限管理、問題追蹤、甘特圖以及日曆功能等等;但說到它的缺點,相信很多人的共識就是它在安裝和管理上並不容易,不過近年已有一鍵安裝(Bitnami Redmine Stack)、虛擬機器(Virtual Machine)或是容器(Dokcer)的安裝方式,也算是越來越便利了。

以下就用 Docker 的方式來建置 Redmine 的應用服務。


Install Redmine

  1. 創建 MySQL 的容器,在這裡指定的是 5.6 版本
docker run --name mysql56 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=P@ssw0rd -d mysql:5.6
  1. 創建 Redmine 的容器,並將資料庫指向(link)建立好的 MySQL 5.6 容器
docker run -d --name myredmine -p 8080:3000 -v d:/docker/redmine:/usr/src/redmine/files --link mysql56:mysql redmine
  1. 接著在瀏覽器上就可以看到建置好的 Redmine 頁面
    https://ithelp.ithome.com.tw/upload/images/20190308/20111830cjUgP8gIsv.png

  2. 點選「登入」後,進入登入頁面,預設的帳號為 admin,密碼為 admin
    https://ithelp.ithome.com.tw/upload/images/20190308/20111830sOmqgHkV7m.png

  3. 第一次登入成功後,系統會要求變更密碼
    https://ithelp.ithome.com.tw/upload/images/20190308/201118309O54YtjQ8W.png

  4. 修改密碼完成後,就可以開始使用、管理 Redmine 了
    https://ithelp.ithome.com.tw/upload/images/20190308/201118307Zs9AXzWvV.png

是不是很簡單呢?不過要用好、用滿,其實有更多的細節需要注意。希望大家能夠一起分享、討論。


Install Redmine using Docker Compose

若是覺得一連串的指令還是很麻煩,可以利用 Docker Compose 這個工具,將多個容器綁定為一個應用服務,這樣就可以透過寫好的 Docker Compose 的定義檔(yml),用一個命令來建立與啟動服務。

  1. 撰寫 docker-compose.yml
version: '3.1'

services:

  redmine:
    image: redmine
    container_name: myredmine
    restart: always
    volumes:
      - ./data/redmine:/usr/src/redmine/files
    ports:
      - 8080:3000
    environment:
      REDMINE_DB_MYSQL: db
      REDMINE_DB_PASSWORD: P@ssw0rd
     
  db:
    image: mysql:5.6
    container_name: mysql56
    #在 redmine 使用時,遇到文字有中文時會有問題,故加入以下 command 這段
    command: --character-set-server=utf8 --collation-server=utf8_general_ci
    restart: always
    volumes:
      - ./data/mysql:/var/lib/mysql
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: P@ssw0rd
      MYSQL_DATABASE: redmine

image : 要使用的容器映像檔
container_name : 生成的容器名稱(非必要)
restart : 停止時自動重起(非必要)
volumes : 將本機指定的目錄連結至容器內,這樣可以永續保存資料
ports : 將本機指定的 Port 對應至容器內的 Port
environment : 設定容器內需要的相關參數

  1. 執行啟動的命令(需在 docker-compose.yml 的同目錄下,執行命令)
docker-compose up

按下 CTRL + C 即會停止服務
所以要背景啟動,則可以加上 -d 的參數

docker-compose up -d
  1. 若是要停止服務,則可以執行停止的命令
docker-compose down

使用 docker-compose 可以更便利,要注意的細節也很多,後續再慢慢補充


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
muscletaipei
iT邦新手 5 級 ‧ 2020-03-05 17:41:03

好棒的分享唷
請教一個問題,如果要加上ssl,要如何加上docker-compose裡呢?謝謝。

我要留言

立即登入留言