LoginSignup
1
7

More than 3 years have passed since last update.

オフライン環境のDockerでAlfrescoを立ち上げる

Posted at

概要

dokcer-composeとdockerイメージを取得し、オフライン環境で起動する。

  • オンライン環境作業

    • docker-composeの取得
    • dockerイメージをpullで取得
    • 取得したdockerイメージをtarで圧縮
  • オフライン環境作業

    • docker-composeの導入
    • dockerイメージを展開
    • docker-composeコマンドでコンテナ起動

オンライン環境作業

初めにdocker-composeを取得する。

## docker-composeをgitから取得
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /tmp/docker-compose

## ファイル確認
$ ls -l /tmp/docker-compose
-rw-r--r-- 1 root     root       11750136 Mar 19 08:24 docker-compose

あわせて、必要な3つのイメージを取得する。

  • webcenter/rancher-alfresco:v5.1-201605-1
  • alpine
  • postgres:9.4
## webcenter/rancher-alfresco:v5.1-201605-1
$ docker pull webcenter/rancher-alfresco:v5.1-201605-1

## alpine
$ docker pull alpine

## postgres:9.4
$ docker pull postgres:9.4

## イメージ取得後の確認
$ docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE
postgres                     9.4                 ed5a45034282        4 weeks ago         251MB
alpine                       latest              e7d92cdc71fe        2 months ago        5.59MB
webcenter/rancher-alfresco   v5.1-201605-1       c76b4794cf11        3 years ago         2.14GB

続いて、公式ドキュメントにある通り、dockerイメージをtarファイルに出力する。

## dockerイメージをtarにする
$ docker save postgres:9.4 webcenter/rancher-alfresco:v5.1-201605-1 alpine > alfresco.tar

## ファイル確認
$ ls -l alfresco.tar
-rw-rw-r-- 1 root root 2435766272 Mar 19 07:41 alfresco.tar

ここまでで取得した以下の2ファイルをオフライン環境へ配置する。

  • docker-compose
  • alfresco.tar

オフライン環境で作業

ここからはオフライン環境での作業になる。
まずは取得したファイルが配置してあることを確認する。

## 配置確認
$ ls -l /tmp
-rw-r--r-- 1 root root 11750136 Mar 19 08:24 docker-compose
-rw-rw-r-- 1 root root 2435766272 Mar 19 07:41 alfresco.tar

docker-composeの導入を行う。

## bin配下にdocker-composeを配置
$ sudo mv /tmp/docker-compose /usr/local/bin/

## 実行権限を付与
$ sudo chmod +x /usr/local/bin/docker-compose

## 導入確認(バージョンが表示されること)
$ docker-compose -v
docker-compose version 1.22.0, build f46880fe

docker-compose.ymlは以下に書かれていたもの参考に用意。

参考:【Docker】これは役に立つ!! docker-compose.ymlの例まとめ

docker-compose.yml
alfresco:
  environment:
    CIFS_ENABLED: 'false'
    FTP_ENABLED: 'false'
  tty: true
  image: webcenter/rancher-alfresco:v5.1-201605-1
  links:
  - postgres:db
  stdin_open: true
  ports:
  - 8081:8080/tcp
  volumes_from:
    - alfresco-data
alfresco-data:
  image: alpine
  volumes:
  - /opt/alfresco/alf_data
  net: none
  command: /bin/true
postgres:
  environment:
    PGDATA: /var/lib/postgresql/data/pgdata
    POSTGRES_DB: alfrescodb
    POSTGRES_PASSWORD: password
    POSTGRES_USER: alfrescouser
  tty: true
  image: postgres:9.4
  stdin_open: true
  volumes_from:
    - postgres-data
postgres-data:
  labels:
    io.rancher.container.start_once: 'true'
  image: alpine
  volumes:
  - /var/lib/postgresql/data/pgdata
  net: none
  command: /bin/true

私が使用しているオフライン環境では8080ポートが使用済みのため、ポートを8081へ変更している。

いよいよ、dokcerコンテナを起動する。
docker-compose.ymlが置いてある階層で以下のコマンドを実施する。

## コンテナ起動
$ docker-compose up -d
Starting alfresco_alfresco-data_1 ... done
Starting alfresco_postgres-data_1 ... done
Starting alfresco_postgres_1      ... done
Starting alfresco_alfresco_1      ... done

## コンテナ起動確認
$ docker-compose ps
          Name                        Command              State                                            Ports
----------------------------------------------------------------------------------------------------------------------------------------------------------
alfresco_alfresco-data_1   /bin/true                       Exit 0
alfresco_alfresco_1        /bin/sh -c /app/run.sh          Up       137/tcp, 138/tcp, 139/tcp, 21/tcp, 445/tcp, 7070/tcp, 8009/tcp, 0.0.0.0:8081->8080/tcp
alfresco_postgres-data_1   /bin/true                       Exit 0
alfresco_postgres_1        docker-entrypoint.sh postgres   Up       5432/tcp

最後に実際にアクセスしてみる。

ブラウザを開き、以下のアドレスを入力。
http://[オフライン環境のIPアドレス]:8081/share/page

初期ユーザ/初期パスワードはadmin/admin
login.png

以上で終了になります。

おわりに

Qiita初投稿でした!
アウトプットを全くしてこなかったので記事にしてみました。

余談

私はオンライン環境にAWSを使用していました。
EBS容量不足やエンドポイントの使い方など含めて、記事には出していない問題もいくつかありました。
あと、Markdown形式の文章も初めて書いたかも。
いい学習になったかも。

~おしまい~

1
7
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
1
7