docker相关使用
安装docker
在CentOS 7
上安装docker-ce
,首先检查系统中是否已经安装过docker
及相关依赖:
$ sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
通过仓库进行安装,安装所需的包:
$ sudo yum install yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
启用稳定版的仓库sudo yum-config-manager --enable docker-ce-stable
,
禁用仓库sudo yum-config-manager --disable docker-ce-stable
安装docker-ce
,sudo yum install docker-ce
.如果出现key相关错误,可以重新安装一下,会使用下载的缓存,并提示导入指纹。
启动docker
,sudo systemctl start docker
现在使用docker相关命令的话,需要sudo
权限,可以将当前用户添加进入docker组,
sudo usermod -aG docker $USER
退出shell,重新进入就不需要sudo
权限了
修改docker镜像为中国官方镜像sudo vim /etc/docker/daemon.json
,添加以下内容
{"registry-mirrors":["https://registry.docker-cn.com"]}
修改镜像名字
sudo docker tag IMAGEID [docker.my.com:port/]NAME[:1.0.0]
如果需要上传到指定私有镜像, 需要指定域名
或ip
, 版本号根据自己的需求进行添加.
上传镜像到私有仓库
需要将镜像改名, sudo docker tag IMAGEID docker.my.com:port/NAME[:1.0.0]
,
编辑sudo vim /etc/docker/daemon.json
, 添加内容{"insecure-registries":["docker.my.com:port"]}
, 如果之前已经有内容, 可以在已有内容后添加,
, 然后添加"insecure-registries":["docker.my.com:port"]
, 重启sudo systemctl restart docker
上传sudo docker push docker.my.com:port/NAME:1.0.0
, 需要指定版本号, 如果重命名时没有指定, 就使用默认的版本号.
~~
开机自启容器
在启动容器时需要使用--restart=always
, 注意
一定要把这个参数放在-d
参数的后面
, 不然容器会一直重启
.
示例docker run -d --restart=always -p port:port -v /local_path:/docker_path --name name image_name
~~
如果启动时没有指定--restart=always
, 也可以使用更新命令docker update --restart=always name
复制docker中的内容
可以使用sudo docker ps -a
查看是否有docker
容器以及NAMES
, 如果容器停止并删除了, 就不能复制内容.
sudo docker cp NAMES:/home/users/file ./
进入docker的shell
sudo docker exec -it NAMES /bin/bash
, 和Linux
的操作一样,
可以通过cat /etc/issue
查看Linux
发行版本, 默认进入是root
权限.
使用cat /proc/version
, 这样查到的是宿主机的系统.
uname -a
查到的是容器的相关信息.
保存docker容器的修改
--privileged=true
是严格模式启动容器, 需要修改容器文件, 在启动容器时启用
docker ps
查看容器id
, docker commit id name:version
删除仓库中上传的镜像
查看仓库中镜像信息
curl -X GET http://docker.my.com:port/v2/_catalog
查看Etag
,
需要使用特殊的头Accept: application/vnd.docker.distribution.manifest.v2+json
curl -I -X HEAD http://docker.my.com:port/v2/镜像名/manifests/版本号
删除
curl -X DELETE http://docker.my.com:port/v2/镜像名/manifests/Etag的值
docker无法启动的问题
一般docker
起不来是因为selinux
的状态问题.
docker
启动时报错Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kernel. Either boot into a newer kernel or disable selinux in docker (--selinux-enabled=false)
修改sudo vim /etc/sysconfig/docker
, 中的--selinux-enabled
为--selinux-enabled=false
如果需要, 可以修改, 不强求/etc/selinux/config
中SELINUX
的值为disabled
.
docker启动容器报WARNING: IPv4 forwarding is disabled. Networking will not work.
编辑系统文件sudo vim /usr/lib/sysctl.d/00-system.conf
, 在最后追加net.ipv4.ip_forward=1
,
重启sudo systemctl restart network
docker相关使用的更多相关文章
- 【云计算】docker相关开源项目、工具
十大基于Docker的开发工具 作者 郭蕾 发布于 2014年8月19日 | 注意:QCon全球软件开发 ...
- Docker相关释义
Docker相关释义 基础网站:http://www.runoob.com/docker/docker-tutorial.html Docker的思想来自于集装箱,集装箱解决了什么问题?在一艘大船上, ...
- docker相关操作
docker 安装参照官网一步一步来,特别简单,主要是下载比较慢: docker 需要 管理员权限: docker 相关命令: 容器生命周期管理 — docker [run|start|stop|re ...
- Jenkins与Docker相关的Plugin使用
原文地址:http://blog.csdn.net/ztsinghua/article/details/52128140 Jenkins与Docker相关的Plugin 在Jenkins Plugin ...
- Docker相关环境全套安装文档兼小技能
Docker相关环境全套安装文档兼小技能 以下环境皆为ubuntu16.04,主要安装docker,docker-compose,docker仓库等. Docker安装 参考官方 A: 有源安装 Ub ...
- Docker相关文档
网上找到的一个入门级Docker学习笔记,写的不错,值得一看. 转自:http://www.open-open.com/lib/view/open1423703640748.html#articleH ...
- Docker 相关命令汇总
操作容器的命令 镜像中的容器启动之后可以在 docker 中操作和查看容器的信息 l docker ps 查看运行的容器,如果想查看全部加上参数-a 即可 l docker create 完整 ...
- docker相关总结
Docker 的相关使用记录 一.安装docker linux环境使用yum命令安装docker 第一步:确保自己的虚拟机没有安装过docker,如果安装过的需要将原先的docker进行卸载,命令如下 ...
- docker相关配置
一.概述: 1.centos7下,默认firewalld为防火墙, systemctl status firewalld.service 2.关闭firewalld, systemctl stop f ...
随机推荐
- Git学习笔记(两)
删除文件 假设需要从Git删除文件,我们必须从删除列表中的跟踪文件(从临时区域中删除).然后提交.可以使用git rm工作订单完成.联合司令部从工作区删除指定的文件.以后就不会出如今未跟踪文件清单中. ...
- JPA示例项(J采纳PA的hibernate实现版本号)
(1).JPA介绍: JPA全名Java Persistence API ,Java坚持API这是Sun公司Java EE 5规范中提出的Java持久化接口. JPA吸取了眼下Java持久化技术的长处 ...
- JavaScript知识树
- Xamarin简介
简介 简单来说,Xamarin提供了使用C#完成iOS,Android和Windows Phone三个移动平台开发的可能性Xamarin包括Xamarin.Andriod.Xamarin.IOS.Xa ...
- WCF服务的IIS托管(网站托管)
基本思路 1.新建WCF应用程序2.注册路由(可省略,则用/….svc/….访问)配置文件 <appSettings> <add key="aspnet:UseTaskFr ...
- C#热敏打印图片 串口打印图片
原文:C#热敏打印图片 串口打印图片 如图,一步一步慢慢调出来的 //串口通信类 public System.IO.Ports.SerialPort serialPort = null; serial ...
- Windows系统CPU内存网络性能统计第一篇 内存
最近翻出以前做过的Windows系统性能统计程序,这个程序可以统计系统中的CPU使用情况,内存使用情况以及网络流量.现在将其整理一下(共有三篇),希望对大家有所帮助. 目录如下: 1.<Wind ...
- WPF ScrollViewer(滚动条) 自定义样式表制作 (改良+美化)
原文:WPF ScrollViewer(滚动条) 自定义样式表制作 (改良+美化) 注释直接写在代码里了 不太理解意思的 可以先去看看我上一篇 WPF ScrollViewer(滚动条) 自定 ...
- WPF WindowChrome 自定义窗口
1.wpf自定义窗口: WindowChrome类描述:https://msdn.microsoft.com/zh-cn/library/system.windows.shell.windowchro ...
- Qt 跨UI线程的数据交换和信号-槽调用实现方案汇总
一.目录 转载1: http://my.oschina.NET/fanhuazi/blog/737224?ref=myread 点击打开链接 转载2: http://www.qtcn.org/bbs/ ...