【试验】亲身验证docker从安装到使用-超级详细版本
docker安装详细步骤(yum版本)
备注:Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本
使用 root 权限登录 Centos。执行yum update确保 yum 包更新到最新。
卸载旧版本的
yum remove docker docker-common docker-selinux docker-engine
安装 yum-utils、device-mapper-persistent-data、lvm2包
yum install -y yum-utils device-mapper-persistent-data lvm2
配置docker的yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
执行安装命令
yum install docker-ce
yum install docker-ce-17.12.0.ce
设置开机启动
systemctl start docker
systemctl enable docker
验证docker是否正常开启
docker version
Client: Version: 18.09.7 API version: 1.39 Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:56:06 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 18.09.7 API version: 1.39 (minimum version 1.12) Go version: go1.10.8 Git commit: 2d0083d Built: Thu Jun 27 17:26:28 2019 OS/Arch: linux/amd64 Experimental: false [root@slave yum.repos.d]#
docker安装详细步骤(离线版本)
Linux下离线安装Docker
一、基础环境
1、操作系统:CentOS 7.3
2、Docker版本:18.06.1 官方下载地址(打不开可能需要***)
3、百度云Docker 18.06.1地址:https://pan.baidu.com/s/1YdN9z72QutPkHBfLq06H1A 密码:dvvh
4、官方参考文档:https://docs.docker.com/install/linux/docker-ce/binaries/#install-static-binaries
二、Docker安装
1、解压
tar -xvf docker-18.06.1-ce.tgz
2、将解压出来的docker文件内容移动到 /usr/bin/ 目录下
cp docker/* /usr/bin/
3、将docker注册为service
vim /etc/systemd/system/docker.service
将下列配置加到docker.service中并保存
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
the default is not to use systemd for cgroups because the delegate issues still
exists and systemd currently does not support the cgroup feature set required
for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
Having non-zero Limit*s causes performance problems due to accounting overhead
in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
Uncomment TasksMax if your systemd version supports it.
Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
kill only the docker process, not all processes in the cgroup
KillMode=process
restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
4、启动
chmod +x /etc/systemd/system/docker.service #添加文件权限并启动docker
systemctl daemon-reload #重载unit配置文件
systemctl start docker #启动Docker
systemctl enable docker.service #设置开机自启
5、验证
systemctl status docker #查看Docker状态
docker -v #查看Docker版本
docker使用
删除下载的镜像总是提示镜像正在被停止的容器使用,刚刚尝试了以下方法可以正常删除
docker ps -a | grep “Exited” | awk ‘{print $1 }’|xargs docker stop
docker ps -a | grep “Exited” | awk ‘{print $1 }’|xargs docker rm
docker images|grep none|awk ‘{print $3 }’|xargs docker rmi 镜像id
[root@slave ~]# docker images|grep none|awk '{print $3 }'|xargs docker rmi a803b2474b20 Untagged: oraclelinux:latest Untagged: oraclelinux@sha256:9d7cf2eb1171841f630914980bfeb62b119399d873cd65a38afec1ab82ced14a Deleted: sha256:a803b2474b20ba6e3ca7d99b1c81d09a04852183f0d850711aed8df63f6bd07a Deleted: sha256:52623949541e258114fd72c4d4b3e7509e8817e9f431ae2a7c2b6ffa6119c5f8 [root@slave ~]# docker images -a REPOSITORY TAG IMAGE ID CREATED SIZE yandex/clickhouse-server latest 76a0758826b1 4 days ago 475MB postgres latest 6dc0e6af942c 13 days ago 312MB centos latest 9f38484d220f 4 months ago 202MB [root@slave ~]#
备注:
**使用一个镜像启动docker容器
docker run -it 容器名称 /bin/bash
**查看容器状态
docker ps -a
**启动停止一个容器
docker start/stop 容器ID
**进入一个容器
docker exec -it 容器ID /bin/bash
**docker 提示b-bus没有权限处理办法
docker run --privileged -ti --name test1 centos /usr/sbin/init
容器和容器之间网络
宿主机和容器之间的网络
通过映射宿主机的端口到容器的端口实现访问容器的端口,映射命令如下
-p 中指定映射到 host 某个特定端口,例如可将 80 端口映射到 host 的 8080 端口:
每一个映射的端口,host 都会启动一个 docker-proxy 进程来处理访问容器的流量:
- docker-proxy 监听 host 的 32773 端口。
- 当 curl 访问 10.0.2.15:32773 时,docker-proxy 转发给容器 172.17.0.2:80。
- httpd 容器响应请求并返回结果。
- CentOS7 下Docker最新入门教程 超级详细 (安装以及简单的使用)
- MySQL 5.7版本的安装使用详细教程+更改数据库data的存储路径
- centos 使用RPM包安装指定版本的docker-engine
- 详细图解MySQL(win7x64 5.7.16版本)下载、安装、配置与使用
- 详细图解MySQL(win7x64 5.7.16版本)下载、安装、配置与使用
- Nvidia-Docker安装(Ubuntu16.04,其它版本未验证)
- Docker学习(一)Ubuntu版本的Docker安装和使用
- docker~windows版本的安装与使用
- 0.11.1版本docker安装与使用
- 详细图解MySQL(win7x64 5.7.16版本)下载、安装、配置与使用
- 详细图解MySQL5.7(win7x64 5.7.16版本)下载、安装、配置与使用
- centos7安装指定版本docker且使用本地docker 仓库
- docker介绍安装及详细使用
- Ubuntu 16.04安装使用--Ubuntu16.04下基于Docker的Caffe-GPU版本环境搭建总结
- eclipse下安装和使用svn版本控制[详细图解]
- Docker安装及基本使用方法详细介绍
- 详细图解MySQL(win7x64 5.7.16版本)下载、安装、配置与使用
- 详细图解MySQL(win7x64 5.7.16版本)下载、安装、配置与使用
- 详细图解MySQL(win7x64 5.7.16版本)下载、安装、配置与使用
- Synology群晖使用Docker安装redmine且关联git版本库