Docker 使用

2017-10-14  本文已影响0人  表象_Dark

执行 Dockerfile 文件

docker build -t ${1}:${2} .
#{?} 参数通配

一、创建镜像

1、创建 centos 7 镜像:

docker pull centos

2、创建JDK 镜像(Dcokerfile)

FROM centos:centos7

# 中文支持
ENV LANG=en_US.utf8

# 时区问题
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo "Asia/Shanghai" >> /etc/timezone

# install jdk8
ADD ./ /tmp
RUN chmod +x /tmp/jdk-8u131-linux-x64.rpm
RUN rpm -i /tmp/jdk-8u131-linux-x64.rpm
ENV JAVA_HOME /usr/java/jdk1.8.0_131
ENV PATH $PATH:$JAVA_HOME/bin

# install main packages:
RUN yum -y update
RUN yum -y install epel-release tar
#RUN yum -y install wget

#RUN yum -y install git zip unzip ; yum clean all
RUN yum -y install zip unzip ; yum clean all

3、创建 web 服务器镜像(Dokcerfile)

FROM ezjs_jdk8:base

VOLUME /tmp
# 需要修改addpp jar包名称
ENV NAME web_test

ADD ${NAME}-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c 'touch /app.jar'
# 使用prodocker配置文件进行启动
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar", "--spring.profiles.active=dev"]
# 暴露指定端口 - 应用端口
EXPOSE 8088

备注:
 spring.profiles.active=dev 指向 springBoot 运行文件
EXPOSE 指向 服务器端口(文件配置中的端口)

4、创建 MySQL 镜像与容器

mkdir -p /mnt/mysql/data
docker run -p 3306:3306 --name mysql -v /mnt/mysql/data:/var/lib/mysql -v /etc/localtime:/etc/localtime -e MYSQL_ROOT_PASSWORD=123456 -d --restart unless-stopped mysql:5.6

5、创建 web 容器

docker run -d -p 8088:8088 web_test:2

port1:port2 -> 对外端口 : 原始端口
web_test:2 : 镜像的 REPOSITORY:TAG

docker run -p 8088:8088 --name=web_client --link=base_mysql:base_mysql -d --restart unless-stopped web_client:tag(images:tag)
上一篇下一篇

猜你喜欢

热点阅读