我是Docker和CI的新手。当我需要设置服务器时,我也很糟糕。
我想要的只是让一个Docker镜像运行Tomcat,并且可以使用Ttravis的Tomcat部署插件(在after_success部分中)重新部署我的新应用程序版本。
我正在修改此存储库的7.0 Tomcat版本:https://github.com/tutumcloud/tutum-docker-tomcat
我没有改变任何东西,服务器能够启动,但我无法访问管理器,也无法部署我的代码。
我想在我的主机中使用名为conf/
的目录,此目录将复制到tomcat/conf directory
。
为了连接到经理/部署我的代码,我需要添加tomcat/conf/tomcat-users.xml
和tomcat/conf/settings.xml files
。
我用这个Dockerfile实现了这个目的:
FROM tifayuki/java:7
MAINTAINER Feng Honglin <hfeng@tutum.co>
RUN apt-get update && \
apt-get install -yq --no-install-recommends wget pwgen ca-certificates && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
ENV TOMCAT_MAJOR_VERSION 7
ENV TOMCAT_MINOR_VERSION 7.0.55
ENV CATALINA_HOME /tomcat
# INSTALL TOMCAT
RUN wget -q https://archive.apache.org/dist/tomcat/tomcat-${TOMCAT_MAJOR_VERSION}/v${TOMCAT_MINOR_VERSION}/bin/apache-tomcat-${TOMCAT_MINOR_VERSION}.tar.gz && \
wget -qO- https://archive.apache.org/dist/tomcat/tomcat-${TOMCAT_MAJOR_VERSION}/v${TOMCAT_MINOR_VERSION}/bin/apache-tomcat-${TOMCAT_MINOR_VERSION}.tar.gz.md5 | md5sum -c - && \
tar zxf apache-tomcat-*.tar.gz && \
rm apache-tomcat-*.tar.gz && \
mv apache-tomcat* tomcat
ADD create_tomcat_admin_user.sh /create_tomcat_admin_user.sh
ADD run.sh /run.sh
ADD conf/ /tomcat/conf/ # THIS LINES ADD MY TOMCAT-USER FILE
RUN chmod +x /*.sh
EXPOSE 8080
这是tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin" password="vT0nZAuK4tGp" roles="manager-gui,manager-script" />
</tomcat-users>
我的创业公司:
docker run -d -p 8080:8080 gmas/tomcat
您可以在那里看到我的所有文件:https://github.com/GiveMeAShow/docker
git存储库只包含docker conf所需的文件,所以它非常小。
关于我的日志文件:
答案 0 :(得分:0)
使用
ADD/COPY pathtofile /tomcat/pathtofile
或
run -v /host/pathtofile:/container/pathtofile
检查主机文件的访问权限。如果不够的话,
sudo chmod 777 /host/pathtofile