ドッカーオン[V]:PostgreSQLの+ nginxのをインストールします。

関連情報:

[研究ドッカー]セクション:ドッカー+アルパイン+ OpenSSHの+スーパーバイザデプロイのLinux基盤環境

[研究ドッカー]セクションII:インストール高山-PKG-のglibc、Javaのデプロイメント環境

【研究ドッカー]セクションIII:圧縮と画像のインポートおよびエクスポート

ドッカー] [セクションIVに:使用して共有フォルダをマウントするマウント(CIFS)

この第二のセクションでは、インストールのPostgreSQL + nginxのを続行するために、ミラーに接続され、Dockerfileは次のとおりです。

# 基于alpine的镜像
FROM highlevel/alpine-server:glibc
MAINTAINER Docker PPHT <[email protected]>

RUN apk --no-cache add postgresql redis nginx curl \
    && mkdir /run/nginx/ \
    && mkdir /root/pgdata/ \
    && mkdir /run/postgresql/ \
    && chown -R postgres /root/ \
    && chown -R postgres /root/pgdata/ \
    && chown -R postgres /run/postgresql/ \
    && su -c "initdb -D /root/pgdata/" postgres \
    && echo "host    all     all             192.168.1.1/0                 trust" >> /root/pgdata/pg_hba.conf \
    && sed -i "s/#listen_addresses = 'localhost'/listen_addresses = '*'/g" /root/pgdata/postgresql.conf \
    && sed -i '1a su -c "pg_ctl start -D /root/pgdata/" postgres' /root/start.sh \
    && sed -i '1a nginx' /root/start.sh \
    && rm -rf /var/cache/apk/*


# 开端口
EXPOSE 22
EXPOSE 9001
EXPOSE 80
EXPOSE 443
EXPOSE 5432

CMD /root/start.sh

ルートディレクトリにコマンドラインスイッチでは、次のコマンドは、ミラードッカーの確立を実行します。

docker build -t highlevel/alpine-server:web .

鏡像に削除します。

docker rm alpine-glibc

ランタイムイメージ:

docker run --name alpine-web -p 10022:22 -p 9001:9001 -p 5432:5432 -p 80:80 -p 443:443
 -it highlevel/alpine-server:web

ここで注意すべき設定ファイル、/ルート/ PGDATA /ディレクトリ内のデータベースファイル、ディレクトリのPostgresのユーザー権限がなければなりません。

共有フォルダ(セクションIV)をプラグインする場合はまた、ファイルシステムフォルダは、それがlinxu前にpostgresユーザの権限を許可する必要がありますETX。プラグイン共有フォルダ後、データベースの初期化コードを実行し、以下の通りであります:

//初始化数据库
su -c "initdb -D /数据库目录/" postgres

//启动数据库
su -c "pg_ctl start -D /数据库目录/" postgres

//用下面代码添加到自启动
sed -i '1a su -c "pg_ctl start -D /数据库目录/" postgres' /root/start.sh

デフォルトのユーザー:postgresのパスワード:postgresの 

 

公開された28元の記事 ウォンの賞賛2 ビュー10000 +

おすすめ

転載: blog.csdn.net/highlevels/article/details/95065202