Docker-初始docker
2017-11-19 20:34
162 查看
一、什么是Docker
Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻便、快捷。下面的图片比较了 Docker 和传统虚拟化方式的不同之处。传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。
二、为什么要使用docker
为什么要使用docker三、docker基本概念
Docker 包括三个基本概念镜像(Image)
容器(Container)
仓库(Repository)(包含了一些镜像加速器和Registry地址)
理解了这三个概念,就理解了 Docker 的整个生命周期。简单来说,镜像与容器的关系类似面向对象的类与实例的关系。镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
四、docker的安装(摘自:Centos安装Docker CE)
a、安装docker ce
按照官网安装教程进行安装:官方有Mac、Windows、Ubuntu、Debian、Centos等安装教程阿里云Docker CE安装镜像帮助文档:阿里云Docker CE镜像源站
因网络问题,本文是参考 阿里云Docker CE镜像源站 方式安装的Centos版的Docker CE。安装成功后:
[root@localhost local]# sudo service docker start
Redirecting to /bin/systemctl start docker.service
[root@localhost local]# docker version
Client:
Version: 17.09.0-ce
API version: 1.32
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:41:23 2017
OS/Arch: linux/amd64
Server:
Version: 17.09.0-ce
API version: 1.32 (minimum version 1.12)
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:42:49 2017
OS/Arch: linux/amd64
Experimental: false
[root@localhost Desktop]#
出现版本信息表示安装成功。
b、配置国内镜像加速器
配置阿里加速器:
参考:镜像加速器登陆阿里云账号,访问地址:https://cr.console.aliyun.com/#/accelerator ,会有一个专有的加速地址:
按提供的方法配置docker加速器,如果已经存在 /etc/docker 文件夹,就不需要执行 sudo mkdir -p /etc/docker 命令:
配置daocloud加速器:(配置方法:daocloud官方)
[root@localhost Desktop]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f79ca91e.m.daocloud.io docker version >= 1.12
{
"registry-mirrors": ["http://f79ca91e.m.daocloud.io"]
}
Success.
You need to restart docker to take effect: sudo systemctl restart docker
[root@localhost Desktop]# sudo systemctl restart docker
[root@localhost Desktop]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
bc95e04b23c0: Downloading 10.06MB/22.49MB
f3186e650f4e: Downloading 9.407MB/21.95MB
9ac7d6621708: Download complete
c、检查加速器
命令:docker info ,如下信息表示配置成功[root@localhost docker]# docker info
Containers: 0
……
……
Registry Mirrors: https://xxxxxxxx.mirror.aliyuncs.com/ Live Restore Enabled: false
默认配置下,如果在 CentOS 使用 Docker CE 看到下面的这些警告信息:
WARNING: bridge-nf-call-iptables is disabled WARNING: bridge-nf-call-ip6tables is disabled
请添加内核配置参数以启用这些功能。
[root@localhost Desktop]# sudo tee -a /etc/sysctl.conf <<-EOF > net.bridge.bridge-nf-call-ip6tables = 1 > net.bridge.bridge-nf-call-iptables = 1 > EOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 [root@localhost Desktop]#
然后重新加载
sysctl.conf即可
[root@localhost Desktop]# sudo sysctl -p net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 [root@localhost Desktop]#
d、建立 docker 用户组
默认情况下,docker命令会使用 Unix socket 与 Docker 引擎通讯。而只有
root用户和
docker组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用
root用户。因此,更好地做法是将需要使用
docker的用户加入
docker用户组。
建立
docker组:
先查看是否存在docker用户组
[root@localhost Desktop]# grep docker /etc/group
不存在就新建docker分组:
[root@localhost Desktop]# sudo groupadd docker
为当前用户
docker组创建用户(dockuser)并设置密码(dockuser):
[root@localhost Desktop]# useradd -G docker dockuser [root@localhost Desktop]# passwd dockuser Changing password for user dockuser. New password: BAD PASSWORD: The password contains the user name in some form Retype new password:
相关文章推荐
- docker:mysql启动时自动执行初始建表脚本
- [YII2-初始]yii2_app_base_docker镜像
- 初始docker(三)
- Centos7制作docker初始镜像
- 初始Docker
- docker 初始
- 初始docker技术
- 初始Docker
- 初始容器技术之部署Docker(一)
- 第1章 初始Docker
- 博客初始之日
- Docker命令使用详解
- 利用Docker搭建MongoDB副本集群
- mac 系统mysql的初始密码
- Ubuntu下Docker CE的安装
- Docker Image Specification v1.0.0
- 解决无法docker镜像无法上传的问题
- 阿里云上Docker企业版之旅
- centos7 安装 最新版本的docker
- 在有密码且Root证书替换的Proxy环境里使用docker-machine