我需要用tomcat安裝details.I嘗試建立許多dockerfile,並試圖建立,但沒有luck.Can任何人都可以告訴我,什麼命令應該是他們在dockerfile中成功的tomcat安裝?不需要任何官方的tomcat image.Thanks提前。tomcat的Dockerfile
回答
在Docker中使用Tomcat有幾種可用選項。例如。還有,你可以找到關於https://registry.hub.docker.com/_/tomcat/
但是,如果你想從頭開始創建一個文件下面可能有幫助的官方版本:
FROM ubuntu:14.04
RUN apt-get update && apt-get -y upgrade
RUN apt-get -y install software-properties-common
RUN add-apt-repository ppa:webupd8team/java
RUN apt-get -y update
# Accept the license
RUN echo "oracle-java7-installer shared/accepted-oracle-license-v1-1 boolean true" | debconf-set-selections
RUN apt-get -y install oracle-java7-installer
# Here comes the tomcat installation
RUN apt-get -y install tomcat7
RUN echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle" >> /etc/default/tomcat7
# Expose the default tomcat port
EXPOSE 8080
# Start the tomcat (and leave it hanging)
CMD service tomcat7 start && tail -f /var/lib/tomcat7/logs/catalina.out
要構建圖像只需使用docker build:
docker build -t my/tomcat .
要啓動容器,您必須使用您的war文件mount a volume。
docker run -v /somefolder/myapp:/var/lib/tomcat7/webapps/myapp -p 8080:8080 my/tomcat
然後,你應該全部設置!
它說開始tomcat失敗 – user2451997
它也失敗了我。我想了解如何查看日誌等信息,如果這可以得到運行。 – Jeff
進行調試: 嘗試將ssh放入容器中,而不啓動tomcat: [docker run -v/somefolder/myapp:/ var/lib/tomcat7/webapps/myapp -p 8080:8080 -it my/tomcat bash] 在上面的命令,驗證您的應用程序文件夾是否正確指定 -v/somefolder/myapp:/ var/lib/tomcat7/webapps/myapp 然後,嘗試啓動tomcat服務,看看發生了什麼.... –
這是我做過什麼來解決這個問題:
Dockerfile
FROM tomcat
MAINTAINER richard
RUN apt-get update && apt-get -y upgrade
WORKDIR /usr/local/tomcat
COPY tomcat-users.xml /usr/local/tomcat/conf/tomcat-users.xml
COPY context.xml /usr/local/tomcat/webapps/manager/META-INF/context.xml
EXPOSE 8080
我拷貝這兩個文件,以從外部訪問管理器應用。如果你希望它太,添加以下對上下文和tomcat用戶文件
的context.xml
<Context antiResourceLocking="false" privileged="true" >
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
<Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>
的tomcat-users.xml中
<tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
version="1.0">
<user username="admin" password="secret" roles="manager-gui"/>
</tomcat-users>
然後你就可以建立並運行它:
docker build -t name/tomcat .
docker run -d -p 8080:8080 --name some_name name/tomcat
部署應用程序如下:
docker cp some/app.war some_name:/usr/local/tomcat/webapps/app.war
- 1. 使用Dockerfile安裝MongoDB和Tomcat
- 2. 使用Dockerfile與PostgreSql一起運行Tomcat
- 3. Dockerfile和Tomcat + MYSQL +文件系統應用
- 4. Dockerfile - 創建dockerfile
- 5. 配置JDK基於Tomcat的內部Dockerfile運行Maven:9
- 6. Dockerfile中缺少dockerfile的Shell變量
- 7. Docker tomcat通過dockerfile編輯配置文件
- 8. 從Dockerfile
- 9. 內Dockerfile
- 10. 內Dockerfile
- 11. 從Dockerfile
- 12. CMD dockerfile
- 13. 紗失敗的Dockerfile
- 14. RPM的Dockerfile問題
- 15. Mariadb的Dockerfile圖像
- 16. npm項目的Dockerfile
- 17. 任何人都可以幫助我爲我的tomcat副本創建Dockerfile嗎?
- 18. Dockerfile FROM指令
- 19. Django rest project dockerfile
- 20. Dockerfile COPY {源-...}
- 21. COPY和Dockerfile
- 22. 使用Dockerfile
- 23. 通過Dockerfile
- 24. Dockerfile入口點
- 25. Dockerfile分裂
- 26. 是否可以在CircleCI中使用未命名爲「Dockerfile」的Dockerfile?
- 27. 不會運行的Dockerfile
- 28. Dockerfile中的交互命令
- 29. Dockerfile中的循環/迭代
- 30. Dockerfile結束的好習慣?
看一看[這些Dockerfiles(https://github.com/tutumcloud/tutum-docker-tomcat) –
您可以使用這些作爲出發點,以及: https://github.com/docker-library/tomcat –