centos7安装docker[含docker常用命令]

centos7安装docker[含docker常用命令]

修改yum源改成 阿里云

1、下载wget

yum install wget -y 

2、创建目录

mkdir -p  /etc/yum.repos.d

3、下载阿里云yum源配置

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

4、更新缓存

yum clean all

yum makecache

docker三大核心概念

1.镜像

镜像是docker运行容器的前提,docter运行容器前需要本地存在对应的镜像。如果镜像不存在本地,docter会尝试先从默认镜像仓库下载(默认使用docter hub公共注册服务器中的仓库),用户也可以通过配置,使用自定义的镜像仓库

2.容器

容器是镜像的一个运行实例

3.仓库

集中存放镜像的地方

安装前置条件

docker要求Linux内核要3.0以上版本,如果centos6.x 内核是2.x,需要升级linux内核

我虚拟机直接安装的是centos 7 64位 输入uname -r 查看内核

安装步骤

1)升级本地yum包

yum update

2) 安装工具集

yum install -y yum-utils device-mapper-persistent-data lvm2

3)安装阿里云docker源

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4)更新yum缓存

yum makecache fast
yum clean  all

5)安装docker

yum -y install docker-ce

6)启动docker服务

service docker start

7)查看docker版本

docker -v

8)开机启动docker服务

systemctl enable docker.service

docker 无法下载镜像解决方法

1)创建文件目录

mkdir -p /etc/systemd/system/docker.service.d

2)创建http-proxy.conf并添加内容

vim /etc/systemd/system/docker.service.d/http-proxy.conf
 
HTTP_PROXY 为自己的代理上网地址
添加的内容:
[Service]
Environment="HTTP_PROXY=http://10.1.82.22:3128"

3)重新读取服务的配置文件

systemctl daemon-reload

4)重启Docker

systemctl restart docker

5)验证是否已加载配置

systemctl show --property=Environment docker

常用命令

镜像相关

命令 作用
docter pull NAME[:TAG] 使用pull命令从docker hub仓库下载镜像到本地
docker tag oldName newName 为本地镜像添加新的标签
docker images 列出本地主机上已有的镜像
docker search TERM 默认搜索docker hub官方仓库的镜像
docker rmi 镜像id或者镜像名称 删除镜像
docker commit [OPTIONS] CONTAINER[REPOSITORY[:TAG]] 基于已有镜像的容器创建镜像,可以创建比较复杂的镜像。-a:作者信息,-m:提交信息,-p:提交时暂停容器运行
docker import -NAME[:TAG] 基于本地模板导入镜像
docker build -t NAME[:TAG] dockerfile路径 基于dockerfile创建
docker save –o xxx.tar NAME[:TAG] 存出镜像到本地文件
docker load 载入镜像
docker inspect 镜像id 查看镜像详细信息

容器相关

命令 作用
docker create –it NAME[:TAG] 创建容器
docker start NAME[:TAG] 启动容器
docker run –it NAME[:TAG] 等于先执行docker create命令,再执行docker start,-it交互式,守护态运行,通过run后加-d实现
docker stop[-t –time[=10]]
docker restart NAME[:TAG] 启动状态重新启动
docker ps –a –q 查看处于终止的容器id信
docker ps 查看正在运行的容器
docker ps –a 查看所有容器
docker rm 容器id 删除容器,需要先停止
docker logs 容器id 查看容器日志
docker port container-id> 端口
docker inspect 容器id 查看容器信息
docker exec -u root -it containerID /bin/bash 指定用户进入容器操作
env 容器内部输入env查看容器内部环境变量
docker cp container-id : 复制本地文件到容器
docker cp container-id: 复制容器文件到本地
docker network create app_net 创建自定义网络
docker network connect app_net container-name 连接网络

docker run -it -v /dbdata --name dbdata

创建数据卷容器dbdata,并在其中创建数据卷挂载到/dbdata。其他容器挂载使用–volumes-from dbdata,可以多次使用,从多个容器挂载多个数据卷,还可以从一挂载数据卷的容器来挂载数据卷,且使用–volumes-from 参数所挂载数据卷的容器自身不需要保持运行,要删除一个数据卷,必须在删除最后一个还挂着它的容器时显示使用docker rm -v命令来指定同时删除关联的容器

修改docker的port端口映射

1)查看需要修改的容器,记住container id

docker ps -a

2) 停止容器

docker stop xxx

3) 修改容器的端口映射配置文件
vim /var/lib/docker/containers/{container_id}/hostconfig.json

"PortBindings": {
     "80/tcp": [
             {
             "HostIp": "",
             "HostPort": "80"//宿主机ip
             }
         ]

4)重启docker服务

systemctl restart docker

5)启动docker服务

systemctl start docker

docker容器自动启动设置

1)在运行docker容器时可以加如下参数来保证每次docker服务重启后容器也自动重启

docker run --restart=always

2)如果已经启动了则可以使用如下命令 替换成自己的容器id或名称

docker update --restart=always <CONTAINER ID>

你可能感兴趣的:(centos7安装docker[含docker常用命令])