- A+
所属分类:Docker

#dockerfile 范例编写 #1、基础镜像 FROM centos # 2、维护者信息 MAINTAINER docker_user docker_user@email.com #3、镜像操作指令 RUN groupadd admin && useradd admin -g admin RUN mkdir /usr/java RUN mkdir /home/admin/app COPY jdk-8u191-linux-x64.tar.gz /usr/java COPY demo-0.0.1-SNAPSHOT.jar /home/admin/app RUN tar xzf /usr/java/jdk-8u191-linux-x64.tar.gz -C /usr/java && rm -rf usr/java/jdk-8u191-linux-x64.tar.gz #设置环境变量 ENV JAVA_HOME /usr/java/jdk1.8.0_191 ENV PATH $PATH:$JAVA_HOME/bin RUN source /etc/profile # 设置对外端口为 7010 EXPOSE 7010 #执行 java -jar 命令 (CMD:在启动容器时才执行此行。RUN:构建镜像时就执行此行) CMD java -jar /home/admin/app/demo-0.0.1-SNAPSHOT.jar
以上为DockerFile正文,DockerFile编写完成后,需要使用Docker命令打成镜像文件。
构建docker镜像
docker build -t hellworld .
此命令最后有一个点,表示使用当前上下文的dockerfile文件 -t:给镜像取名为helloworld
启动docker镜像
docker run -d -p 7010:7010 --name dockertest helloworld
-d 后台运行
-p 7010:7010 端口映射,注意小写p (前一个7010是对外浏览器上访问的端口,后一个7010是容器内工程本身的端口,两者不一样)
--name dockertest 给容器取名为 dockertest (取名参数前面是两短横线)
hellworld 引用镜像名称
进入docker镜像
docker exec -it hellworld bash
以命令行进入docker容器,hellworld为容器名称
docker镜像打包
docker save -o helloworld.tar.gz helloworld
save命令保存一个或多个镜像到tar归档文件,helloworld.tar.gz打包后的名称, helloworld为引用镜像
- 我的微信
- 加好友一起交流!
-
- 微信公众号
- 关注公众号获取分享资源!
-