4
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Windows10にDocker ComposeでRedmineを導入

Last updated at Posted at 2021-06-26

#目的
Windows10環境にDockerを利用してRedmine, Gitlab, Jenkinsの環境セットを
繰り返し構築できるように、実際に試してみた内容を残しておきます。

#記載範囲
下記前提条件に沿って、Docker Desktop for Windowsをインストールして
Docker Composeを利用してRedmineを導入するところまでを記載します。

試すにあたり、以下サイトを参考にさせて頂きました。

#前提条件

  • エディション:Windows10 Pro
  • プロセッサ:Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz 2.90GHz
  • 実装RAM:16.0GB
  • システムの種類:64 ビット オペレーティング システム、x64 ベース プロセッサ
  • Docker Desktop for Windows v20.10.6
  • docker/compose 1.29.1

#事前準備
Docker Desktop for Windows をインストールするWindowsマシンに対して、「Hyper-V」の設定を有効化しておきます。

  1. コントロールパネルを開く
  2. プログラムを選択し、プログラムと機能を開く
  3. Windowsの機能の有効化または無効化を選択
  4. 以下の「Hyper-V」のチェックボックスにチェックが無ければ、チェックを入れて「OK」ボタンを押下
  5. Windowsマシンの再起動
    Windows_Hyper-V設定.PNG

#Docker Desktop for Windowsのインストール

  • 以下のサイトより「Download for Windows」ボタンを押下し、インストーラをダウンロードして実行する。

Docker Desktop for Mac and Windows | Docker
Docker Desktop Installer画面.PNG

#Windows PowerShell(管理者権限)を起動
Windows PowerShell起動は以下のいずれかで起動できます。
どちらの場合も、別ウィンドウでPowerShellが起動されます。

  • コマンドプロンプトを起動し、以下コマンドを入力
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "Start-Process PowerShell.exe -Verb runas"
  • スタートメニューから「ファイル名を指定して実行」にて「powershell」を入力して起動後、以下コマンドを入力
Start-Process PowerShell.exe -Verb runas

#Dockerのバージョンを確認
インストールしたDockerのバージョンを確認します。

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

PS C:\Users\xxxx> docker version
Client:
 Cloud integration: 1.0.14
 Version:           20.10.6
 API version:       1.41
 Go version:        go1.16.3
 Git commit:        370c289
 Built:             Fri Apr  9 22:49:36 2021
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.6
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       8728dd2
  Built:            Fri Apr  9 22:44:56 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.4
  GitCommit:        05f951a3781f4f2c1911b05e61c160e9c30eaa8e
 runc:
  Version:          1.0.0-rc93
  GitCommit:        12644e614e25b05da6fd08a38ffa0cfe1903fdec
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

#Docker Composeのバージョンを確認
公式サイト(日本語化):Doker-docs-ja/Docker Composeでも記載されていますが
Docker Desktop for Windowsには、Docker Composeはその一部に含まれてすでにインストールされています。

PS C:\WINDOWS\system32> docker-compose --version
docker-compose version 1.29.1, build c34c88b2

#ディレクトリ構成
今回試したディレクトリ構成は、以下のように作成し、コンテナ破棄とともにデータが失われないように
外部マウント先(コンテナ外)として「data」ディレクトリは別に分けています。

C:\DOCKER
└─my_prot01
        docker-compose.yml
└─data
  └─my_prot01
  └─db

#docker-compose.yml
AWS EC2にDocker ComposeでRedmineを導入 の執筆時に記載したdocoker-compose.ymlの内容をWindows向けに修正しています。

version: '3.9'

services:
  redmine:
    image: redmine:passenger
    container_name: redmine
    ports:
      - 3000:3000
    environment:
      TZ: Asia/Tokyo
      REDMINE_DB_MYSQL: mysql
      REDMINE_DB_DATABASE: redmine
      REDMINE_DB_USERNAME: redmine
      REDMINE_DB_PASSWORD: redmine
      REDMINE_DB_ENCODING: utf8
    depends_on:
      - mysql
    restart: always
    volumes:
      - ../data/my_prot01/redmine/files:/usr/src/redmine/files
      - ../data/my_prot01/redmine/redmine/log:/usr/src/redmine/log
      - ../data/my_prot01/redmine/plugins:/usr/src/redmine/plugins
      - ../data/my_prot01/redmine/redmine/public/themes:/usr/src/redmine/public/themes

  mysql:
    image: mysql:5.7
    container_name: mysql
    restart: always
    environment:
      TZ: Asia/Tokyo
      MYSQL_ROOT_PASSWORD: devops
      MYSQL_DATABASE: redmine
      MYSQL_USER: redmine
      MYSQL_PASSWORD: redmine
    volumes:
      - ../data/db:/var/lib/mysql
    command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci

#docker-composeコマンドを実行し、Dockerコンテナ(複数)をバックグラウンド起動

PS C:\docker\my_prot01> docker-compose up -d
Docker Compose is now in the Docker CLI, try `docker compose up`

Creating mysql ... done
Creating redmine ... done
  • 備忘録

上記コマンド実行時、volumesに指定したディレクトリ権限に関するダイアログが出ました。
「Share it」を選択(volumes指定分だけ表示)
Docker Desktop up時のshareエラー画面.PNG

#コンテナの状態を確認

PS C:\docker\my_prot01> docker ps
CONTAINER ID   IMAGE               COMMAND                  CREATED          STATUS          PORTS                                       NAMES
7ebd216d48c5   redmine:passenger   "/docker-entrypoint.…"   24 minutes ago   Up 23 minutes   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp   redmine
f35646564e40   mysql:5.7           "docker-entrypoint.s…"   24 minutes ago   Up 24 minutes   3306/tcp, 33060/tcp                         mysql

#Redmineにアクセス
ブラウザを起動し、 http://localhost:3000 にアクセスする。
以下のようにRedmine画面が表示されれば完了。
Redmineアクセス_For Windows.PNG

#Redmine初回アクセス時

  1. 「ログイン」リンクを押下後、ログインIDとパスワードは"admin"を入力して「ログイン」ボタンを押下します。
  2. 初回は以下パスワード変更画面に遷移するので、任意のパスワードに変更。
    Redminパスワード変更 for Windows.PNG

#次回の予定
Windows10にDocker ComposeでJenkinsを導入する記事を投稿予定。

4
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?