組成泊塢窗文件後,一切都建立很好,但做docker ps
後,也沒有任何的容器正在運行。無法打開應用程序後,搬運工,譜寫
下面是我docker-compose.yml
version: '3'
services:
web-app:
build:
context: .
dockerfile: web-app/Dockerfile
ports:
- 8080:8080
links:
- app-db
app-db:
build:
context: .
dockerfile: app-db/Dockerfile
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=Optimize
ports:
- 3306:3306
爲
和Dockerfile
web應用程序就像是
FROM aallam/oracle-java
ENV DEBIAN_FRONTEND noninteractive
ENV TOMCAT_MAJOR_VERSION=8
ENV TOMCAT_VERSION=8.5.14
ENV TOMCAT_HOME=/opt/tomcat
RUN apt-get update && \
rm -rf /var/lib/apt/lists/*
WORKDIR /tmp
RUN groupadd tomcat && \
useradd -s /bin/false -g tomcat -d $TOMCAT_HOME tomcat && \
mkdir $TOMCAT_HOME && \
#wget http://mirrors.standaloneinstaller.com/apache/tomcat/tomcat-$TOMCAT_MAJOR_VERSION/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz && \
wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz && \
tar xzvf apache-tomcat-8*tar.gz -C $TOMCAT_HOME --strip-components=1 && \
chown -R tomcat:tomcat $TOMCAT_HOME && \
chmod -R g+r $TOMCAT_HOME/conf && \
chmod g+x $TOMCAT_HOME/conf && \
rm -rf apache-tomcat-$TOMCAT_VERSION.tar.gz
WORKDIR/
ADD /web-app/tomcat-run.sh /tomcat-run.sh
ADD /web-app/run.sh /run.sh
ADD /web-app/supervisord-tomcat.conf /etc/supervisor/conf.d/supervisord-tomcat.conf
ADD /web-app/settings.xml $TOMCAT_HOME/conf/settings.xml
ADD /web-app/tomcat-users.xml $TOMCAT_HOME/conf/tomcat-users.xml
ADD /web-app/context.xml $TOMCAT_HOME/webapps/manager/META-INF/context.xml
RUN chmod 755 /*.sh
COPY /web-app/target/*.war $TOMCAT_HOME/webapps/
expose 8080
ENTRYPOINT ["/run.sh"]
和Dockerfile
的數據庫就像
FROM aallam/oracle-java
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && \
apt-get -yq install mysql-server supervisor && \
rm -rf /var/lib/apt/lists/*
#WORKDIR/
ADD /app-db/bind_0.cnf /etc/mysql/conf.d/bind_0.cnf
ADD /app-db/mysql-run.sh /mysql-run.sh
ADD /app-db/supervisord-mysql.conf /etc/supervisor/conf.d/supervisord-mysql.conf
VOLUME ["/var/lib/mysql"]
expose 3306
docker-compose up -d
後,這是輸出在終端
[email protected]:~/Creating optdocker_app-db_1
[email protected]:~/Creating optdocker_web-app_1
加入docker-compose logs
和netstat -tln
[email protected]:~/Opt-Docker$ netstat -tln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:10000 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
tcp6 0 0 :::40645 :::* LISTEN
tcp6 0 0 127.0.0.1:9000 :::* LISTEN
tcp6 0 0 127.0.0.1:9001 :::* LISTEN
tcp6 0 0 :::10000 :::* LISTEN
tcp6 0 0 127.0.0.1:36241 :::* LISTEN
tcp6 0 0 :::42801 :::* LISTEN
tcp6 0 0 :::37971 :::* LISTEN
[email protected]:~/Opt-Docker$ docker-compose logs
Attaching to optdocker_web-app_1, optdocker_app-db_1
[email protected]:~/Opt-Docker$
但docker ps
不給任何東西。誰能告訴在哪裏和什麼我做錯了
docker ps -a
輸出
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a93140ab6f4 optdocker_web-app "/bin/bash" 16 minutes ago Exited (0) 16 minutes ago optdocker_web-app_1
53b7ec265fac optdocker_app-db "/bin/bash" 16 minutes ago Exited (0) 16 minutes ago optdocker_app-db_1
你可以添加一些日誌或輸出? – javasenior
而且可以肯定的是3306端口沒有被任何應用程序。 – javasenior
你的意思是'docker-compose logs'? –