首页 > 其他分享 >docker提交容器成一个新的镜像commit和push,以及docker常用命令

docker提交容器成一个新的镜像commit和push,以及docker常用命令

时间:2023-01-06 14:35:53浏览次数:34  
标签:容器 -- 宿主机 常用命令 push 镜像 docker 目录


docker自己提交配置好的容器,然后生成一个新的镜像,以后启动就以配置好的镜像作为模板启动

代码如下:

docker commit -a "author" -m "commit message"  容器id namespace/name:tag

如果想把镜像推到仓库里面去: 

--本地镜像素材原型,本地的images

--登录阿里云开发者平台,进入之后搜索容器镜像服务,即可进入阿里云镜像管理

docker提交容器成一个新的镜像commit和push,以及docker常用命令_数据

--创建仓库镜像,命名空间;仓库名称;

docker提交容器成一个新的镜像commit和push,以及docker常用命令_数据_02

--将镜像推送到registry

$ sudo docker login --username=username registry.cn-hangzhou.aliyuncs.com
$ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/ale/mytomcat9:[镜像版本号]
$ sudo docker push registry.cn-hangzhou.aliyuncs.com/ale/mytomcat9:[镜像版本号]

--公有云可以查询到

--查看详情

 

进入容器命令:

docker exec -it 容器id /bin/bash

启动添加容器数据卷:

docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名

带权限:ro(readonly只读)

docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名

注意:Docker挂载主机目录Docker访问出现cannot open directory.:Permission denied

解决办法:在挂载目录后多加一个 --privileged=true参数即可

 

DockerFile添加容器数据卷

--根目录下创建mydocker文件夹并进入

mkdir mydocker
vi Dockerfile

--可在Dockerfile中使用VOLUME指令来给镜像添加一个或多个数据卷

VOLUME["/dataVolumeContainer","dataVolumeContainer2","/dataVolumeContainer3"] 
说明:
出于可移植和分享的考虑,用-v 主机目录:容器目录这种方法不能够直接在Dockerfile中实现
由于宿主机目录是依赖于特定宿主机的,并不能够保证在所有的宿主机上都存在这样的特定目录

案例:

FROM centos
VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
CMD echo "finished,------success1"
CMD /bin/bash

--File构建

docker build -f /mydocker/Dockerfile -t namespace/name .(有个小点)

--build后生成镜像   -   获得一个新镜像 namespace/name

--run容器

--本地的地址:通过docker inspect 容器id可以查看

--通过

查看容器详情:

docker inspect 容器id

标签:容器,--,宿主机,常用命令,push,镜像,docker,目录
From: https://blog.51cto.com/u_15932265/5993528

相关文章

  • docker报错:报错br-xxxx 之Docker-Compose 自动创建的网桥与局域网络冲突
    故障描述:当我使用docker-compose的方式部署内网的harbor时。它自动创建了一个bridge网桥,与内网的一个网段(172.18.0.1/16)发生冲突,docker默认的网络模式是bridge,默认网......
  • docker-compose 部署 jenkins
    #docker-compose部署jenkinsversion:'3'services:jenkins:user:rootrestart:alwaysimage:jenkins/jenkins:2.383-centos7-1container_na......
  • docker-compose部署jar包
    version:"3"services:gmz-collect:container_name:gmz-collectrestart:alwaysimage:openjdk:8-jdk-alpinevolumes:-./gmz-collect-1......
  • Docker 简介和安装
    Docker是什么Docker是一个应用打包、分发、部署的工具你也可以把它理解为一个轻量的虚拟机,它只虚拟你软件需要的运行环境,多余的一点都不要,而普通虚拟机则是一个完整而庞......
  • MongoDB docker版本安装
    #准备映射文件夹#拉取镜像dockerpullmongo#启动dockerrun--namemongodb-server-p27017:27017-v/root/mongodb/data/config:/data/configdb/-v/root/mongodb......
  • Docker安装MinIO
    文章目录​​前言​​​​安装​​​​访问​​前言MinIO是一个基于ApacheLicensev2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结......
  • redhat 9.1 安装docker
    在新主机首次安装DockerEngine-Community之前,需要设置Docker仓库,之后,您可以从仓库安装和更新Docker。设置仓库,需要安装所需的软件包。yum-utils提供了yum-config-man......
  • 『高级篇』docker容器来说什么是微服务(三)
    ​上一节说了单体架构,单体架构也无法适应我们的服务,来说说微服务,看能否解决单体架构的问题。什么是微服务最近两,三年才出现的新名词,虽然时间还不是很长,几乎每个软件从业人员......
  • 『高级篇』docker之微服务架构带来的问题(五)
    ​之前已经说了微服务的概念,相信老铁对微服务有了一个深刻的概念,从此以后咱们深入微服务,一步步来分析使用微服务会给我们带来哪些问题,或者说使用微服务需要解决哪些问题,以及......
  • 「docker实战篇」python的docker爬虫技术-移动自动化控制工具appium工具(17)
    框架,可用于原生,混合和移动Web应用程序测试。它使用WebDriver协议驱动iOS,Android应用程序。直接多种语言:java,python等等。appium架构####desiredcapabilitydesiredcapabil......