Docker镜像的构建

  1. 容器内部像linux一样操作,然后提交容器成镜像
  2. Dokcerfile提交镜像

  1. 创建一个容器
[[email protected] ~]#docker run --name mynginx01 -it centos
[[email protected] ~]# docker  ps -a 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                    PORTS                               NAMES
84bcc294325b        nginx               "nginx -g ‘daemon off"   3 seconds ago       Up 3 seconds

2.此时已经进入容器

yum  -y install wget 
wget -O /etc/yum.repos.d/epel.repo 
yum  -y install  nginx
vim  /etc/nginx /nginx.conf 
...
daemon off;
退出

3,制作镜像

[[email protected] ~]# docker  commit  -m  "mynginx01"  be750c11ab1e   mynginx/mynginx:v1  
sha256:5143358c3833b4ee5a40b847d86dee072dc7c0bade9358e7d83323d6349784b0
[[email protected] ~]# 
mynginx/mynginx:v1    仓库/镜像名称:版本标签
[[email protected] ~]# docker images
REPOSITORY                                               TAG                 IMAGE ID            CREATED             SIZE
mynginx/mynginx                                          v1                  5143358c3833        41 seconds ago      340.1 MB

二.Dokcerfile制作镜像

[[email protected] dockerfile]# cat Dockerfile 
FROM centos
MAINTAINER liuhaixiao
RUN yum  -y install wget 
RUN rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm
RUN wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
RUN  yum clean all && yum  install  nginx  -y
RUN echo "daemon off;" >>/etc/nginx/nginx.conf
ADD index.html /usr/share/nginx/html/index.html
EXPOSE 80
CMD ["nginx"]
[[email protected] dockerfile]# cat index.html 
hello  liuhx
[[email protected] dockerfile]# pwd
/root/dockerfile
[[email protected] dockerfile]#

构建镜像

cd /root/dockerfile
Docker  build  -t  mynginx/mynginx03:03  ./
[[email protected] dockerfile]# docker images
REPOSITORY                                               TAG                 IMAGE ID            CREATED             SIZE
mynginx/mynginx03                                        v3                  8c81f51923e5        2 minutes ago       374.6 MB

启动容器:

[[email protected] dockerfile]# docker  run  -d  --name   nginx007 -p 86:80  mynginx/mynginx03:v3
6f2501177ac00e064b22c6c3045b973dc41935e82180753a21a14f3224f5f323

时间: 2024-10-06 04:23:25

Docker镜像的构建的相关文章

docker镜像的构建及基于镜像创建容器

1.在项目里创建Dockerfile(注意大小写)文件,执行构建命令:docker build -t tiny-node-1 /root/tiny-node-docker    其中tiny-node-1是镜像的标签名称,/root/tiny-node-docker是项目的路径 1.1 Dockerfile的详解以后再说... 2.创建容器镜像docker run --rm -it -p 8080:8080 tiny-node-1(软件名称)

构建Docker镜像实战

简介 Nginx是一款轻量级的Web服务器,Tomcat是一款免费开源的轻量级web服务器,在中小型企业和并发访问量不高的场合使用,是开发和调试JSP程序的首选.MSQL是当下最流行的关系型数据库,以上这些都可以使用Dockerfile文件的方式来创建其Docker镜像. 构建nginx镜像 下载基础镜像 # docker pull centos 建立工作目录 # mkdir /nginx # cd /nginx/ 创建并编写Dockerfile文件 # vim Dockerfile //一定是

sqler sql 转rest api 的docker 镜像构建(续)使用源码编译

sqler 在社区的响应还是很不错的,已经添加了好多数据库的连接,就在早上项目的包管理还没有写明确, 下午就已经有go mod 构建的支持了,同时也调整下docker 镜像的构建,直接使用git clone + go mod 备注: go mod 是新的包管理方案,需要新版本的golang,使用容器就不存在这个问题了,同时对于国内 还有一个墙的问题,同时我push了1.7tag 的镜像,就是使用go mod 构建的. dockerfile FROM golang:alpine as build

Docker学习(7) 构建镜像

构建docker镜像 1 构建镜像的两种方式 1 通过容器构建镜像 2 通过Dockerfile构建镜像 原文地址:https://www.cnblogs.com/xiao-xue-di/p/11442377.html

Docker 镜像及Docker仓库配置 [四]

Docker 镜像及Docker仓库配置 [四] Docker 时间:2016年11月8日15:45:20 一.Docker 镜像介绍 Docker镜像构建分为两种,一种是手动构建,另一种是Dockerfile(自动构建) Docker镜像手动构建案例: 我们基于centos镜像进行构建,制作nginx镜像 [[email protected] ~]# docker run --name abcdocker -it centos[[email protected] /]# yum install

docker镜像创建

关于docker镜像的构建有四种形式:     官方下载    dockerfile创建    yum安装    容器commit生成 作为比较核心的东西,镜像的好坏直接影响docker的使用体验 首先说下四种方式的区别: ①官方下载就是docker pull 自己需要的镜像,当然这个是按照镜像的名字去下载,这里就有一个问题,别人写的镜像跟自己的需求不一定是完全吻合的. ②然后是dockerfile写镜像,这个是在官方镜像的基础上去添加自己想要的东西,构成自己的镜像,个人感觉是一种折中的方案.但

Docker快速入门——Docker镜像制作

Docker快速入门--Docker镜像制作 一.Dockerfile脚本 1.Dockerfile脚本简介 Dockerfile是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容就是描述该层应当如何构建.Dockerfile文件示例如下: ## Dockerfile文件格式 # This dockerfile uses the ubuntu image # VERSION 2 - EDITION 1 # Author: docker_us

管理2000+Docker镜像,Kolla是如何做到的

根据 DockerHub 上的数据,整个 Kolla 项目管理的 镜像有 2000 多个,这么多的镜像,是怎么定义,又是如何构建的呢? 简介 我们一直在说的 Kolla,通常情况下泛指,包括了 Kolla 和 Kolla-Ansible 两个项目. 实际上,根据 OpenStack Wiki,还有个 Kayobe 项目也是相关的.但是这个用的比较少,而且我试用后觉得不是特别符合我的需求,就不过多介绍了. 此外还有一个项目 Kolla-kubernetes 致力于和 Kubernetes 结合,但

从零开始构建一个centos+jdk7+tomcat7的docker镜像文件

从零开始构建一个centos+jdk7+tomcat7的镜像文件 centos7系统下docker运行环境的搭建 准备centos基础镜像 docker pull centos 或者直接下载我准备好的镜像 docker pull registry.cn-hangzhou.aliyuncs.com/repos_zyl/centos:0.0.1 准备jdk7和tomcat7安装包 创建工作目录, mkdir -p /z/docker 准备下载jdk7的tar.gz包http://download.o