docker 自动构建,基于Dockerfile文件

简介: 原文地址:http://kekefund.com/2017/03/06/docker-dockerfile-generated/1,Dockerfile的编写在centos中创建一个目录:/mydata/data/dockertest/,新建Dockerfile文件vim Dockerfile# Verison 0.

原文地址:http://kekefund.com/2017/03/06/docker-dockerfile-generated/

1,Dockerfile的编写

在centos中创建一个目录:/mydata/data/dockertest/,新建Dockerfile文件
vim Dockerfile

# Verison 0.6:

# 基础镜像
FROM chenbb/fofeasy:0.6

# 维护者信息
MAINTAINER cbbing@163.com

# 镜像操作命令
RUN rm -rf /opt/tomcat/webapps/fofeasy
RUN rm -rf /opt/tomcat/webapps/fofeasy.war

ADD fofeasy.war /opt/tomcat/webapps/fofeasy.war

# 容器启动命令
#CMD ["/opt/tomcat/bin/catalina.sh", "run"]

编写完成后:wq保存。

2,构建

基于Dockerfile构建镜像,在Dockerfile文件所在目录下执行

[root@VM_200_249_centos dockertest]# docker build -t chenbb/fofeasy:0.7 .
Sending build context to Docker daemon 65.78 MB
Step 1 : FROM chenbb/fofeasy:0.6
 ---> c441af7f5405
Step 2 : MAINTAINER cbbing@163.com
 ---> Running in f7cbd5cd3199
 ---> cef4cee90997
Removing intermediate container f7cbd5cd3199
Step 3 : RUN rm -rf /opt/tomcat/webapps/fofeasy
 ---> Running in 79505ed64d7f
 ---> 4f85be099a20
Removing intermediate container 79505ed64d7f
Step 4 : RUN rm -rf /opt/tomcat/webapps/fofeasy.war
 ---> Running in be162f93530b
 ---> c5cc2ba60023
Removing intermediate container be162f93530b
Step 5 : ADD fofeasy.war /opt/tomcat/webapps/fofeasy.war
 ---> 8ede3a4f83e5
Removing intermediate container b9b557e26828
Successfully built 8ede3a4f83e5
[root@VM_200_249_centos dockertest]#

注:

chenbb/fofeasy:0.7为新镜像的名字
fofeasy.war文件放到同一目录

[root@VM_200_249_centos dockertest]# ll -lh
总用量 63M
-rw-r--r-- 1 root root 322 3月   3 17:00 Dockerfile
-rw-r--r-- 1 root root 63M 3月   3 16:46 fofeasy.war

3,启动

docker run -d -p 58080:8080 --name javaweb chenbb/javaweb:0.7 /root/run.sh

3,一些问题

  • 容器启动不起来
    考虑是容器里的命令执行报错引起的,重新从镜像创建容器,排除问题,或者通过
    "docker logs <容器ID>" 查看错误日志

参考

http://www.jianshu.com/p/690844302df5

目录
相关文章
|
8月前
|
网络协议 NoSQL Redis
Docker Compose--模板文件
Docker Compose--模板文件
616 29
|
10月前
|
Kubernetes Docker 容器
Kubernetes与Docker参数对照:理解Pod中的command、args与Dockerfile中的CMD、ENTRYPOINT。
需要明确的是,理解这些都需要对Docker和Kubernetes有一定深度的理解,才能把握二者的区别和联系。虽然它们都是容器技术的二个重要组成部分,但各有其特性和适用场景,理解它们的本质和工作方式,才能更好的使用这些工具,将各自的优点整合到生产环境中,实现软件的快速开发和部署。
399 25
|
NoSQL Java Linux
《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结
《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结
541 76
|
10月前
|
安全 API 算法框架/工具
大模型文件Docker镜像化部署技术详解
大模型文件Docker镜像化部署技术详解
1558 2
|
11月前
|
运维 应用服务中间件 nginx
docker运维查看指定应用log文件位置和名称
通过本文的方法,您可以更高效地管理和查看Docker容器中的日志文件,确保应用运行状态可控和可监测。
1710 28
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
14065 38
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
10月前
|
Linux 网络安全 虚拟化
linux怎么把文件传到docker里面
在现代应用开发中,Docker作为流行的虚拟化工具,广泛应用于微服务架构。文件传输到Docker容器是常见需求。常用方法包括:1) `docker cp`命令直接复制文件;2) 使用`-v`选项挂载宿主机目录,实现数据持久化和实时同步;3) 通过SCP/FTP协议传输文件;4) 在Dockerfile中构建镜像时添加文件。选择合适的方法并确保网络安全是关键。
1160 1
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
181 9
|
应用服务中间件 PHP nginx
Docker-compose 编排lnmp(dockerfile) 完成Wordpress
通过使用Docker Compose,我们可以轻松编排LNMP环境并部署WordPress。本文详细介绍了各组件的Dockerfile和配置文件编写,并通过docker-compose.yml文件实现了整个环境的自动化部署。这种方法不仅简化了部署过程,还提高了环境的可移植性和一致性。希望本文能帮助你更好地理解和使用Docker Compose来管理和部署复杂的应用程序。
689 4
|
Docker 容器
docker中使用Dockerfile自动创建数据卷
【10月更文挑战第12天】
296 5