docker--从仓库下载镜像到推送自己的项目到仓库步骤详解

怎样从仓库下载的镜像,变成容器,并在容器中制作项目,再将容器变成镜像,然后将镜像推送到仓库?

一:从官网下载镜像

官方的https://hub.docker.com/提供了数十万个镜像提供大家下载

以拉取个人公有centos7.3镜像为例:

  

  拉取方式为

# docker pull 用户/仓库:标签》docker pull kennyyaohong/public:centos7.3

  

二:进行项目

1.启动容器

# -it 以交互模式启动一个容器
#--name  命名容器
#-d  后台运行容器,并返回容器ID
#docker run  -it  --name    定义容器名        -d 镜像名:标签
》docker run -it  --name container_centos7.3 -d kennyyaohong/public:centos7.3 
》docker ps

CONTAINER ID           IMAGE                                        NAMES                      COMMAND     CREATED           STATUS           PORTS     
4bd480b4ac28    kennyyaohong/public:centos7.3    container_centos7.3          "/bin/bash"  4 seconds ago     Up 3 seconds

2.进入容器

#exec :在运行的容器中执行命令
#-d :分离模式: 在后台运行
#-i :即使没有附加也保持STDIN 打开
#-t :分配一个伪终端
》docker exec -ti container_centos7.3 /bin/bash
[[email protected] /]# 

3.进行项目

进入docker进行要开展的项目

[[email protected] /]# mkdir project
[[email protected] /]# cd project/
[[email protected] project]# ls
[[email protected] project]# vi test.sh
[[email protected] project]# sh test.sh
hello

三:将容器变成镜像

#-a :提交的镜像作者;

#-c :使用Dockerfile指令来创建镜像;

#-m :提交时的说明文字;

#-p :在commit时,将容器暂停。

#     docker    commit    -m  “提交说明文字”    -a        “作者”                        要提交的容器名                 提交后的镜像名:提交后的镜像tag名

》docker commit -m "my_project" -a "kennyyaohong" container_centos7.3  myproject_centos7.3:centos7.3
sha256:e12a9ec48ab76d4114e4d80293eb994bafb5d49e974143766d08ab9f74a2d193
#容器变为镜像后的
host-172-17-17-115:~ # docker images;
REPOSITORY                               TAG                 IMAGE ID            CREATED             SIZE
myproject_centos7.3                      centos7.3           e12a9ec48ab7        2 seconds ago       258MB

  

四:将镜像推入仓库

 1.重新定义标签

#docker  tag  镜像id       要推入仓库的用户名/要推入的仓库名:新定义的tag 
》docker tag e12a9ec48ab7 kennyyaohong/public:myproject_centos7.3
#docker push      要推入仓库的用户名/要推入的仓库名:镜像标签
》docker push kennyyaohong/public:myproject_centos7.3
The push refers to a repository [docker.io/kennyyaohong/public]
193b0484e158: Layer already exists
34e7b85d83e4: Layer already exists
myproject_centos7.3: digest: sha256:5ffa998f3fc91e965d3b2e65ceefbc30a0bce49359058fba39e9386206a84bdc size: 948

  

原文地址:https://www.cnblogs.com/yaohong/p/9221800.html

时间: 2024-09-29 01:08:48

docker--从仓库下载镜像到推送自己的项目到仓库步骤详解的相关文章

解决Docker Hub仓库下载镜像网络异常问题

本文记录下最近在学习Docker容器技术时遇到的一些问题,以此记录下问题分析排查过程 故障问题:通过docker pull 从公共仓库Docker Hub下载镜像失败 [[email protected] ~]# docker pull ubuntu:14.04 Trying to pull repository docker.io/library/ubuntu ... 14.04: Pulling from docker.io/library/ubuntu c2c80a08aa8c: Pull

xcode 版本控制推送代码到远程git仓库的步骤

一 代码推送到远程git仓库 1.在git中建立一个下项目(假设项目名称为->Mygit) 2.在xocde上新建一个测试项目(假设项目名称为GitTest) 3.打开电脑终端: 1)首先利用终端命令进入xcode新建的测试项目(GitTest)的目录中 2) echo "# Mygit" >>README.md  回车 3) git init 回车 4) git add READEM.md 回车 5) git commit -m "commit init&

将提交同时推送到两个Git仓库

打开 \.git\config 内容如下: [core] repositoryformatversion = 0 filemode = false bare = false logallrefupdates = true symlinks = false ignorecase = true hideDotFiles = dotGitOnly [remote "origin"] url = https://github.com/izhangzhihao/SpringMVCSeedProj

Git推送到多个远程仓库

准备工作 在码云和Github上分别新建两个不包括任何文件的空仓库 https://github.com/GreyZeng/article.git https://gitee.com/greyzeng/article.git 在本地新建一个article的文件夹,在该文件夹目录下执行: git init 然后执行 git remote add origin https://gitee.com/greyzeng/article.git git remote set-url --add origin

IOS中远程推送的消息的原理和步骤:

一.消息推送原理: 在实现消息推送之前先提及几个于推送相关概念,如下图1-1: 1-1 1.              Provider:就是为指定IOS设备应用程序提供Push的服务器,(如果IOS设备的应用程序是客户端的话,那么Provider可以理解为服务端[消息的发起者]): 2.              APNS:Apple Push Notification Service[苹果消息推送服务器]: 3.              iPhone:用来接收APNS下发下来的消息: 4.

Java Dwr3实现消息推送步骤详解

DWR包含两个主要的部分:允许JavaScript从WEB服务器上一个遵循了AJAX原则的Servlet中获取数据.另外一方面一个JavaScript库可以帮助网站开发人员轻松地利用获取的数据来动态改变网页的内容,DWR采取了一个类似AJAX的新方法来动态生成基于JAVA类的JavaScript代码.这样WEB开发人员就可以在JavaScript里使用Java代码,就像它们是浏览器的本地代码(客户端代码)一样:但是Java代码运行在WEB服务器端而且可以自由访问WEB 服务器的资源.出于安全的理

wex5 实战 极光推送(1)自定义通知步骤与要领

相信最初接触wex5的人,一定看过官方的极光推送的教学视频,个人认为不够系统明白.今天用自定义通知,对每一步进进行详细说明,帮助大家初步认识极光推送,并集成到app中,打包并上线成功.相关教学视频随后录制. 一 效果演示: 1  极光官网后台推送 2 安卓手机推送效果 二  设计思路 用极光推送插件,集成到app应用中,调用插件api实现app端的通知推送(这里以安卓手机为例) 三  代码实现与步骤 1 注册极光推送帐号,并得到相关key和参数 官网地址:https://www.jiguang.

git向远程git仓库提交代码步骤详解

一.从远程仓库clone工程到本地 git clone -b 分支名称 http://10.1.1.11/service/tmall-service.git  localDestDirectory localDestDirectory意为本地工作目录,该目录中需要指定工成名称 二.现在你可以在你的工作目录中创建文件,进行代码开发工作了 三.输入 git status  查看当前文件修改状态 如果你忘记修改了哪些文件你可以使用 git status  来查看当前状态, 红色的字体显示的就是你修改的

Jenkins在Kubernetes中构建Docker镜像并推送至Registry

def label = "mypod-${UUID.randomUUID().toString()}"podTemplate(label: label, cloud: 'kubernetes', containers: [containerTemplate(name: 'maven', image: 'maven:3.3.9-jdk-8-alpine', ttyEnabled: true, command: 'cat'),containerTemplate(name: 'docker'