【发布时间】:2018-01-26 11:06:48
【问题描述】:
我上周发现了 docker,并且玩了很长时间。 现在我想在容器内部署一个网站。该网站已经完成,我在我的主机系统上获得了所有文件。它需要 php、java、tomcat 和 - 这就是问题 - 一个 mysql-db。
所以我创建了一个 Dockerfile,使用 alpine:latest 作为基础镜像,然后一一安装上述命名的应用程序。
FROM alpine:latest
ENV http_proxy http://not_important/
RUN apk update
RUN apk --no-cache --quiet add openjdk8
RUN apk --no-cache --quiet add nano
RUN apk --no-cache --quiet add php7
RUN apk --no-cache --quiet add mysql
RUN apk --no-cache --quiet add phpmyadmin
RUN mkdir -p /usr/local/tomcat/
COPY apache-tomcat-9.0.4.tar.gz /usr/local/tomcat/
RUN cd /usr/local/tomcat/ && tar xzf /usr/local/tomcat/apache-tomcat-9.0.4.tar.gz
RUN mv /usr/local/tomcat/apache-tomcat-9.0.4/* /usr/local/tomcat
RUN rm -r /usr/local/tomcat/apache-tomcat-9.0.4
RUN rm -r /usr/local/tomcat/apache-tomcat-9.0.4.tar.gz
CMD ["/usr/local/tomcat/bin/catalina.sh", "run"]
但是现在,我不知道如何完成我的工作。如何启动 mysql-db 并使用 phpmyadmin 访问它?
我使用以下命令运行容器:
docker run --name alpine_custom -dit -p 30000:8080 -p31000:80 alpine:custom
tomcat 在端口 30000 上运行没有问题,我希望 phpmyadmin 可以通过端口 31000 访问。我的主机上有一个工作 MySQL-DB 并使用 phpmyadmin 管理它(意思是,有两个容器,phpmyadmin容器与数据库链接)...
是否可以按照我的意愿进行操作,或者我是否必须部署第二个容器,其中包含与我的 alpine 容器链接的数据库(第三个与 phpmyadmin...)?
感谢您的每一个回答,提前谢谢您
真诚的 泰尔瓦尼斯 :)
PS:我知道,Dockerfile 不是很好,但我认为它足以满足我的需求^^
【问题讨论】:
标签: mysql tomcat docker phpmyadmin alpine