Docker的安装和学习
dockers学习
2019年2月23日开始
docker系统要求
centos 7 核心为3.1以上
centos6.5以上 核心为 2.6以上
centos版本查看
centos版本查看:cat /etc/redhat-release
centos内核版本查看: cat /proc/version
查看centos、为64位还是32位:getconf LONG_BIT
docker分为两个版本
1、docker ce 免费版
2、docker ee 企业版 付费版
一般使用dockerce
安装过程
1、删除原有的docker(原有版本的名字为docker 或者 docker engine)
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
完成后位提示OK(卸载完成),或者none found 没有发现
2、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3、设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4、可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
5、安装docker
$ sudo yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版docker-ce.x86_64 3:18.09.2-3.el7 不是后面带centos的版本 启动后显示的实际版本为18.09.2
$ sudo yum install <FQPN> # 例如:sudo yum install 18.03.1.ce-1.el7.centos 制定版本号
6、启动并加入开机启动
$ sudo systemctl start docker
$ sudo systemctl enable docker
7、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
$ docker version
看到client和server启动即可
8、docker学习的一些资料
http://www.runoob.com/docker/docker-container-usage.html
获取默认镜像列表并直接使用
1、docker search -s 3 centos 查找3星以上的话centos的镜像资源
语句说明
docker search [options] 镜像名称
※ -s num :可以查找多少星以上的镜像
※ --automated:默认false,显示automated build 镜像
※ --no-trunk :默认false ,不以截断方式查找镜像
2、获取想要的镜像
docker pull [options] 镜像名称[:tags]
※ -a :下载所有该tags的镜像
※ 忽略tags下载最新版本的镜像
3、查看本地已经下载的镜像
docker images
4、如何将镜像推送到docker hub网站
docker push 镜像:tags
docker 安装rabbitmq
1、获取rabbit镜像:
docker pull rabbitmq:management
2、创建并运行容器:
docker run -d --hostname my-rabbit --name rabbit -p 8080:15672 rabbitmq:management
docker run -d --hostname my-rabbit --name rabbit -p 5672:5672 -p 15672:15672 rabbitmq:management
--hostname:指定容器主机名称
--name:指定容器名称
-p:将mq端口号映射到本地
或在运行时设置用户和密码
docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq:management
15672:控制台端口号
5672:应用访问端口号
3、通过IP:15672访问。本机为 192.168.21.151:15672来访问,如果不能访问就是需要防火墙取消端口限制,无论如何都没办法访问重启后解决
取消防火墙对端口的限制:
vim /etc/sysconfig/iptables
增加一行,端口为15672的限制取消
防火墙重新生效
service iptables restart
查看那些端口可用:
netstat -lntp
4、查看运行状况docker logs rabbit
删除容器
先停止 docker stop container_id
docker rm container_id 可以强制删除 参数为-f
处理不了,重启主机后解决****
docker从国内拉取镜像,或者通过加速器拉取
由于国内访问直接访问Docker hub网速比较慢,拉取镜像的时间就会比较长。一般我们会使用镜像加速或者直接从国内的一些平台镜像仓库上拉取
由于国内访问直接访问Docker hub网速比较慢,拉取镜像的时间就会比较长。一般我们会使用镜像加速或者直接从国内的一些平台镜像仓库上拉取。
我比较常用的是网易的镜像中心和daocloud镜像市场。
网易镜像中心:https://c.163.com/hub#/m/home/
daocloud镜像市场:https://hub.daocloud.io/
我们可以先查看下自己的镜像,使用命令:
docker images
然后可以在网易的镜像中心和daocloud镜像市场上查询想要拉取的镜像。
如图:网易镜像 为网易蜂巢
获取镜像地址:拉取镜像的命令是:
docker pull 镜像名字
所以我们可以按照给出的镜像名字或者命令直接拉取。
docker pull hub.c.163.com/library/tomcat:latest
如果说还是想从dockerhub上拉取,那么使用加速器修改docker的registry-mirrors。我这里使用的是DaoCloud的加速器。
首先在http://www.daocloud.io/进行注册登录。然后点击加速器。
就可以获取加速器的相关配置。
由于docker的版本不同和操作系统。使用的方法也有差异。我这里使用的是centos7.2和docker1.12的。
使用命令
docker version
[root@localhost etc]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
在使用daocloud加速器时,上面有说明文档。
所以刚开始我在寻找/etc/default/docker这个配置文件,一直找不到,后来发现是因为系统和版本的差异。
在centos7上这个配置文件已经被更改为 /etc/docker/daemon.json
可以在这个配置中添加相应的registry-mirrors路径
原来是这样:
[root@localhost docker]# cat daemon.json
{
"live-restore": true
}
添加后:
{
"registry-mirrors": ["http://ef017c13.m.daocloud.io"],
"live-restore": true
}
可以手动vim添加,也可以使用daocloud给出的命令直接更改(建议使用命令)
复制代码 代码如下:
[root@localhost docker]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://ef017c13.m.daocloud.io
自动配置加速器
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
该脚本可以将 --registry-mirror 加入到你的 Docker 配置文件 /etc/docker/daemon.json 中。适用于 Ubuntu14.04、Debian、CentOS6 、CentOS7、Fedora、Arch Linux、openSUSE Leap 42.1,其他版本可能有细微不同。更多详情请访问文档。
更改后重启docker
service docker restart
然后再拉取镜像就会发现速度提高好多。
详情请参考daocloud的说明文档:http://guide.daocloud.io/dcs/daocloud-9153151.html
docker官方文档:https://docs.docker.com/engine/admin/
里面有其他版本的修改说明。
Docker的安装和学习的更多相关文章
- 【学习】在Windows10平台使用Docker ToolBox安装docker(一)
前言:今天距离元旦还有44天,时间点是18:11:45,想了想一路学习的过程和其中遇到的困难,其中有克服的,有放弃的,这有可能是我自己意志不坚定吧,学习docker也是我当下的一个目标,不知道会是成功 ...
- windows下docker的安装及常用命令学习
docker search 镜像名 本文主要介绍Docker在Windows下的安装.关于Docker的介绍和文档在其官网中可以找到:http://www.docker.com .安装环境:Windo ...
- 从零开始学习docker之docker的安装
一.Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 OverlayFS 类的 Union FS 等技术,对进程 ...
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- centos7安装docker并安装jdk和tomcat(常用命令)
阿里专属的镜像加速 在宿主机器编辑文件:vi /etc/docker/daemon.json 阿里专属的镜像加速地址,类似于"https://91cntlkt.mirror.aliyuncs ...
- Docker的安装和测试
1,Docker安装 Docker是啥,以及其与虚拟机的对比,就不介绍了,网上有很多资源可以学习和了解. 本篇文章重点介绍Docker的安装和测试使用. Docker的安装,分为离线安装和在线安装两种 ...
- WIN10中DOCKER的安装
1.docker的安装 环境准备 Docker for Windows是一个Docker Community Edition(CE)应用程序.Docker for Windows安装包包含了在Wind ...
- centos中docker的安装
之前学习docker的时候,是在windows上直接使用可执行文件安装的,最近需要在自己的服务器上安装docker,特此了解了一下如何安装,这里补一下. 小白学Docker之基础篇 小白学Docker ...
- Docker - CentOS 安装 Docker 和 Docker-Compose
目录 介绍 Docker Docker-Conpose 安装 Docker CE 系统要求 使用 YUM 安装 配置加速器 安装 Docker-Compose 介绍 Docker Docker 是一个 ...
随机推荐
- js 选择文本
怎么用js脚本,选中文本呢? // 获取selection对象 var selection = window.getSelection(); // 清空selection对象 selection.re ...
- Java学习日记——基础篇(一)常识
JAVA简介 Java的标准 Java是一种语言,一个平台包含JavaSE.JavaEE.JavaME三个版本 JavaSE标准版(属于Java的基础部分,可以开发C/S构架的桌面应用程序) Java ...
- 解析NaN
此文为自译文,且第一次翻译,有不足之处. 原英文地址:https://en.wikipedia.org/wiki/NaN 我的理解 32位下二进制的 NaN 存储格式为s111 1111 1111 1 ...
- Redis集群都有哪些模式
前言: 一,为什么要使用redis 1,解决应用服务器的cpu和内存压力 2,减少io的读操作,减轻io的压力 3,关系型数据库扩展性不强,难以改变表的结构 二,优点 1,nosql数据库没有关联关系 ...
- 牛顿法与拟牛顿法(五) L-BFGS 算法
转自 https://blog.csdn.net/itplus/article/details/21897715
- arcgis python获得别名
import arcpy # Create a Describe object from the GDB table. # desc = arcpy.Describe(r"C:\Users\ ...
- MISS YOU
文章来源:刘俊涛的博客 欢迎关注,有问题一起学习欢迎留言.评论
- error:Cannot pull with rebase
原文文链接:https://blog.csdn.net/u012385190/article/details/70670213git 执行git pull –rebase报错误如下: error: C ...
- kotlin之注解
注解是用来代码添加元数据的一种手段,要声明一个 注解,需要在类之前添加annotation修饰符 annotation class demo 注解其他属性,可以通过向注解类添加元注解的方式来指定 @T ...
- kotlin使用中辍标记法调用函数
fun main(arg: Array<String>) { var str = "hello world" print(str div("l")) ...