2017-01-15 21 views
0

にCouchDBのサーバーを追加します。どのように私はこのようなドッキングウィンドウのファイルを持っているドッキングウィンドウの作成ファイル

FROM ubuntu:12.04 
MAINTAINER me <[email protected]> 

RUN apt-get -y update 
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install supervisor \ 
apache2 \ 
mysql-server \ 
php5 \ 
libapache2-mod-php5 \ 
php5-mysql \ 
php5-mcrypt 

#ssh 
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install openssh-server 
RUN mkdir /var/run/sshd 
RUN echo 'root:root' | chpasswd 
RUN sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/' /etc/ssh/sshd_config 
RUN sed '[email protected]\s*required\s*[email protected] optional [email protected]' -i /etc/pam.d/sshd 
ENV NOTVISIBLE "in users profile" 
RUN echo "export VISIBLE=now" >> /etc/profile 

EXPOSE 22 80 
ADD ./supervisord.conf /etc/supervisor/conf.d/supervisord.conf 
CMD ["/usr/bin/supervisord"] 

私の質問私は、このドッキングウィンドウのファイルにCouchDBのサーバーを追加するにはどうすればよいのですか?

ここにはhttps://hub.docker.com/r/klaemo/couchdb/のcouchdbドッカー画像が組み込まれていますが、このような画像を作成するにはどうすればよいですか?私はプロセスに関するドキュメンテーションを見つけることができません!

私はグーグルで3時間過ごしましたが運がなかったので、これがダンプの質問であっても頼む危険があります!

答えて

0

ドッカーコンテナに必要なcouchdbの特定のバージョンはありますか? ない場合、あなたはあなたの基本イメージとしてのUbuntu 12.04を使用しているので、あなたはこのようなあなたのapt-getリストにcouchdbを追加することで簡単にUbuntu 12.04/precise [universe] repositoryからのCouchDB 1.0.1のバイナリを取得することができます:

FROM ubuntu:12.04 
MAINTAINER me <[email protected]> 

RUN apt-get -y update 
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install supervisor \ 
apache2 \ 
mysql-server \ 
php5 \ 
libapache2-mod-php5 \ 
php5-mysql \ 
php5-mcrypt \ 
couchdb 
#[--Rest of your dockerfile goes here unchanged--] 

あなたが代わりに使用することができますPPAはApache CouchDBチームによって管理され、正式にリリースされたタールボールに基づいてベースイメージ用の最新の安定版を入手します。このオプションでは、次のdockerfileを使用することができます。

# To install the ppa finder tool in your docker container 
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install python-software-properties 
RUN add-apt-repository ppa:couchdb/stable -y 
RUN apt-get -y update 
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install supervisor \ 
apache2 \ 
mysql-server \ 
php5 \ 
libapache2-mod-php5 \ 
php5-mysql \ 
php5-mcrypt \ 
couchdb 
#[--Rest of your dockerfile goes here unchanged--] 

あなたがドッキングウィンドウコンテナ内の最新またはCouchDBの特定のバージョンが必要な場合、あなたは、ソースコードからのCouchDBを構築する必要があります。この方法では、ソースからcouchdbを構築できるように、より多くのパッケージ(g++ erlang-dev erlang-manpages erlang-base-hipe erlang-eunit, libmozjs185-dev libicu-dev libcurl4-gnutls-dev libtool)をコンテナにインストールする必要があることに注意してください。ただし、couchdbのビルドにのみ必要なパッケージをパージ/削除することは可能です。依存関係の完全なリストはofficial couchdb build wiki on apacheにあります。あなたが本当に最新のバージョンを望むなら、これはdockerfileを参照して、ドッカーファイルをそれに応じて更新することができます。ここにあなたの使いやすさのための完全なドッカーファイル[未テスト]があります:

FROM ubuntu:12.04 
MAINTAINER me <[email protected]> 
ENV COUCHDB_VERSION master 
RUN groupadd -r couchdb && useradd -d /usr/src/couchdb -g couchdb couchdb 
# download dependencies 
RUN apt-get update -y -qq && apt-get install -y --no-install-recommends \ 
build-essential \ 
erlang-dev \ 
erlang-manpages \ 
erlang-base-hipe \ 
erlang-eunit \ 
erlang-nox \ 
erlang-xmerl \ 
erlang-inets \ 
libmozjs185-dev \ 
libicu-dev \ 
libcurl4-gnutls-dev \ 
libtool 
RUN cd /usr/src && git clone https://git-wip-us.apache.org/repos/asf/couchdb.git \ 
&& cd couchdb && git checkout $COUCHDB_VERSION \ 
&& cd /usr/src/couchdb && ./configure && make 
# You can optionally purge/remove the packages you installed to build the couchdb from source. 
# permissions 
RUN chmod +x /usr/src/couchdb/dev/run && chown -R couchdb:couchdb /usr/src/couchdb 
USER couchdb 
EXPOSE 5984 15984 25984 35984 15986 25986 35986 
#[--Rest of your dockerfile can go here as required--] 
関連する問題