3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

docker-composeでコンテナ作成(GROWI)

Last updated at Posted at 2024-07-28

GROWIがナレッジ共有によさそうと聞いたので便利な使い方を調査するとともに環境を作ってみることにした。
ここでは、docker-composeで起動するまでを記載。

Growiの概要

OSSのWikiソフトウェアで、Markdownをベースとしたドキュメント管理およびコラボレーションツール。簡単にインストール・使用ができてチーム内での情報共有やナレッジベースの構築に便利。

GROWI便利なところ

  1. Markdown対応:
    • Markdown形式をサポートしている。Markdownはシンプルで学習コストが低いため、誰でもすぐに使いこなすことができる。
  2. リアルタイム編集
    • Growiはリアルタイムで複数のユーザーが同時に同じドキュメントを編集できる。
  3. 検索機能
    • 強力な検索機能を搭載。タグ付けやページリンクを利用し、情報の整理が簡単にできる。
  4. アクセス管理
    • ユーザーごとに、アクセス権限を設定できる。閲覧権限、編集権限、管理権限などを詳細設定ができる。
  5. プラグイン対応
    • プラグインをサポートしており、機能を拡張できる。GitHubやSlackなど、他のツールとの連携ができる。
  6. エクスポート/インポート機能
    • ドキュメントのエクスポートやインポートが簡単で、他のシステムとの連携やバックアップが容易。

参考URL

構築環境

仮想化:VMware Workstation-playre17
ホスト:Windows11pro
ゲスト:ubuntu22.04.3TLS
↓環境構築時メモ
VMでWindowsホストにUbuntuをゲスト起動する
dockerコンテナ環境作成

1. GROWI起動用のDocker-Compose.ymlを作成

GROWI起動用のdocker-compose.ymlファイルを作成。

mkdir docker-growi
cd docker-growi
nano docker-compose.yml

以下をdocker-compose.ymlファイルに転記。

version: '3'

services:
  mongo:
    image: mongo:4.4
    container_name: growi_mongo
    volumes:
      - mongo_data:/data/db
    networks:
      - growi-network

  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.3
    container_name: growi_elasticsearch
    environment:
      - "discovery.type=single-node"
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    networks:
      - growi-network

  growi:
    image: weseek/growi:latest
    container_name: growi
    environment:
      - "MONGO_URI=mongodb://mongo:27017/growi"
      - "ELASTICSEARCH_URI=http://elasticsearch:9200/growi"
      - "PUID=1000" # optional
      - "PGID=1000" # optional
    volumes:
      - growi_data:/data
    ports:
      - XXXX:3000
    depends_on:
      - mongo
      - elasticsearch
    networks:
      - growi-network

volumes:
  mongo_data:
  growi_data:

networks:
  growi-network:
    driver: bridge

XXXX は任意のブラウザでアクセスする際のport番号を指定。

2. GROWIの起動

以下のコマンドでGROWIを起動。

sudo docker-compose up -d

起動確認

katano@katano-virtual-machine:~/docker-growi$ docker ps -a
CONTAINER ID   IMAGE                                                 COMMAND                   CREATED        STATUS        PORTS                                                                                      NAMES
ffafb2bc24fc   weseek/growi:latest                                   "/docker-entrypoint.…"   17 hours ago   Up 17 hours   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp                                                  growi
e4961c4e0136   mongo:4.4                                             "docker-entrypoint.s…"   17 hours ago   Up 17 hours   27017/tcp                                                                                  mongo
0fe768c95b58   docker.elastic.co/elasticsearch/elasticsearch:7.9.3   "/tini -- /usr/local…"   17 hours ago   Up 17 hours   9200/tcp, 9300/tcp                                                                         elasticsearch

以下のDockerコンテナが起動していることが確認できる。

growi: Growi本体
mongo: データベース
elasticsearch: 検索エンジン

3. ブラウザでアクセス確認

ブラウザを開き、http://<サーバーのIPアドレス>:XXXX にアクセスし管理権限ユーザを作成。

image.png

メモ(ID:38pinn)

4. ユーザ追加など管理設定をする

ブラウザを開き、http://<サーバーのIPアドレス>:XXXX/admin にアクセス
サイトのURLhttp://<サーバーのIPアドレス>:XXXX/を設定し更新をクリックする。
image.png

image.png

サイトのURLhttp://<サーバーのIPアドレス>:XXXX/に移動し、
新規ページ作成でタイトルを入力し、Editで編集する。(プレビュー表示できる)
image.png

3
0
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
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?