Docke容器及仓库管理

1.容器管理

docker create  -it  centos

#创建一个容器,但该容器并没有启动

docker start  26e04d6c4ed3  (通过docker ps -a查看ID)

#启动容器后,可以使用 docker ps  查看到,有start 就有stop,和restart,之前我们使用的docker run 相当于先create再start

docker exec -it 26e04d6c4ed3  /bin/bash    #进入某个镜像

====================或

docker run -i -t centos  bash#这样进入了一个虚拟终端里面,我们可以运行一些命令,使用命令exit或者ctrl d 退出该bash,当退出后这个容器也会停止。

docker run -d   #可以让容器在后台运行

比如:docker run -d centos  bash -c "while :; do echo "123"; sleep 1; done "

docker logs    #可以获取到容器的运行历史信息

docker logs  container_id

docker attach  container_id

#但是attach命令不算好用,比如我们想要退出终端,就得exit了,这样容器也就退出了,还有一种方法

docker exec -i -t container_id  bash

#可以临时打开一个虚拟终端,并且exit后,容器依然运行着

docker rm  container_id

#container_id是ps的时候查看到的,这样就可以把所有container删除,如果是运行的容器,可以加-f

docker  export  container_id  > centos.tar

#导出容器,可以迁移到其他机器上,需要导入

cat centos.tar |docker import - centos

#这样会生成centos的镜像,而不是容器

2.Docker仓库管理

docker pull registry

#下载registry 镜像,registy为docker官方提供的一个镜像,我们可以用它来创建本地的docker私有仓库。

docker run -d -p 5000:5000 registy

#以registry镜像启动容器,监听5000端口

curl 127.0.0.1:5000

#可以访问它

下面我们来把其中一个镜像上传到私有仓库

1. docker tag aming_test  172.7.15.106:5000/centos //标记一下tag,必须要带有私有仓库的ip:port

2. docker push 172.7.15.106:5000/centos   //此时报错了类似如下

Error response from daemon: invalid registry endpoint https://172.7.15.106:5000/v0/: unable to ping registry endpoint https://172.7.15.106:5000/v0/

v2 ping attempt failed with error: Get https://172.7.15.106:5000/v2/: EOF

v1 ping attempt failed with error: Get https://172.7.15.106:5000/v1/_ping: EOF. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry 172.7.15.106:5000` to the daemon‘s arguments. In the case of HTTPS, if you have access to the registry‘s CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/172.7.15.106:5000/ca.crt

这是因为Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误。为了解决这个问题需要在启动docker server时增加启动参数为默认使用http访问。解决该问题的方法为:

vi /etc/init.d/docker

把 $exec -d $other_args 改为

$exec -d --insecure-registry 172.7.15.106:5000 $other_args

然后重启docker

service docker restart

再启动registry容器

docker start  registry_container_id

curl http://172.7.15.106:5000/v1/search   //可以查看私有仓库里面的所有镜像

时间: 2024-10-24 03:27:46

Docke容器及仓库管理的相关文章

对Docke容器的理解和对虚拟机的区别

Docker的含义: 是一种用了新颖方式实现的轻量级虚拟机 专业叫法是应用容器(ApplicationContainer) 它能够在相同的旧服务器上运行的更多的应用程序 它使开发人员能够快速创建简单的,现成的运行容器化应用 它使管理和部署应用程序更加容易  可移植性强  Docker 基于 Go 语言开发 容器: 一个做好的应用容器长得就像一个装好了一组特定应用的虚拟机一样  开源的虚拟机技术  本身不消耗资源,消耗的是运行操作程序资源  对资源消耗和利用率小 容器可以在几乎所有的环境中运行 容

Ubuntu16.04运行docke容器

配置静态ip及DNS sodu vim /etc/network/interfaces auto ens32 iface ens32 inet static address 10.0.0.111 netmask 255.255.255.0 gateway 10.0.0.2 /etc/init.d/networking restart vi /etc/resolv.conf nameserver 10.0.0.2 nameserver 8.8.8.8 允许root登录 vim /etc/ssh/s

Docker容器基础

前言 统称来说,容器是一种工具,指的是可以装下其它物品的工具,以方便人类归纳放置物品.存储和异地运输,具体来说比如人类使用的衣柜.行李箱.背包等可以成为容器,但今天我们所说的容器是一种IT技术. 容器技术是虚拟化.云计算.大数据之后的一门新兴的并且是炙手可热的新技术,容器技术提高了硬件资源利用率.方便了企业的业务快速横向扩容.实现了业务宕机自愈功能,因此未来数年会是一个容器愈发流行的时代,这是一个对于IT行业来说非常有影响和价值的技术,而对于IT行业的从业者来说,熟练掌握容器技术无疑是一个很有前

四.docker容器管理

试验机192.168.181.144 用户root 密码123456 主机名[email protected]:/# hostnameweb docker container run -d --name web2 -P nginx #-P :发布容器中声明EXPOSE端口到宿主机的随机端口:#docker ps -l #列出最新创建的容器:CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES803a6db849ab nginx "nginx

k8s 常用命令

# 启动etcd存储服务    service etcd start # 运行master    cd /opt/kubernetes/bin    ./apiserver.sh 192.168.220.135 http://192.168.220.135:2379    ./scheduler.sh 192.168.220.135    ./controller-manager.sh 192.168.220.135 # 运行node(需要先禁用swap交换缓存,运行命令 swapoff -a)

Kubernetes 入门之Kubernetes 的基本概念和术语

Kubernetes是什么? 他是一个全新的基于容器技术分布式架构领先方案: 他也是一个开放的开发平台: 他也是一个完备的分布式系统支撑平台: Kubernetes的基本慨念和术语 Master Kubernetes 里的Master 指的是集群控制节点,每个Kubernetes 集群里需要有一个 Master 节点负责整个集群的管理和控制,基本上Kuberneter所有的控制命令都发给它,他来负责具体的执行过程,我们后面所执行的所有命令基本上都是在Master节点上运行的.Masteer通常会

docker 部署mysql服务之后,执行sql脚本

1,先将.sql文件copy到docker容器里 docker ps //找到容器的短ID或者指定的name. docker inspect  -f '{{.Id}}' id or name 得到指定容器的全ID docker cp 本地文件路径 ID全称:容器路径[docker cp mysql.sql 12345:/tmp/] 2,将文件copy进容器之后,进入docke 容器 docker exec -it mysql bash 进入容器 mysql -u root -p 进入mysql服

docker入门之镜像管理基础

docker镜像管理基础 首发:arppinging 一.镜像概述 1.1 联合挂载 在之前的文章我们提到过,容器是基于镜像启动的,镜像的存储驱动是overlay2 overlayFS将单个Linux主机上的两个目录合成一个目录,这些目录称为层,统一过程被称为联合挂载. 下图是一个docker镜像和docke容器的分层图,docker镜像是lowdir,docker容器是upperdir.而统一的视图层是merged层.如果一个镜像有多层的话,那么它的启动过程需要进行联合挂载,如下图,cento

基于三维GIS平台的智慧园区建设方案

随着Web3. 0在城市生活应用中的不断深入,智慧城市建设也在不断深入的发展,智慧园区作为智慧城市重要组成部分,存在着建设内容多.周期长,运用存在延续性.技术不断的更新性,而且在建设的过程中涉及到的人员多与投资规模大等特征,需要将智慧停车.餐饮.安防.信息发布.环境监控等融合在一体,并能为用户提供个性化的支持服务,这就需要对智慧园区的建设做好整体规划与设计.1智慧园区建设的系统架构分析基于三维GIS平台的智慧园区建设主要目标是为用户提供高效.便捷.舒适.生态和谐的居住环境,通过以感知技术为核心智