Docker的安装与使用

Docker的安装

(1)卸载老版本
yum remove docker
                  docker-client
                  docker-client-latest
                  docker-common
                  docker-latest
                  docker-latest-logrotate
                  docker-logrotate
                  docker-engine
(2)安装yum仓库
    安装需要的工具
    yum install -y yum-utils device-mapper-persistent-data lvm2
    设置yum仓库的地址
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    更新yum缓存
    yum makecache fast
(3)安装docker
yum install docker-ce docker-ce-cli containerd.io
(4)启动docker
systemctl start docker
(5)hello world
docker run hello-world


镜像操作
(1)配置镜像仓库
    /etc/docker/deamon.json
    {
        "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
    }
    systemctm restart docker
(2)查看网络中的镜像
    docker search 镜像名称
(3)拉取镜像
    docker pull 镜像名称:Tag
    如果没有写tag,则拉取最新版本
(4)查看本地镜像
    docker images
(5)删除镜像
    docker rmi 镜像ID



容器操作
    (1)查看容器
        查看正在运行的容器
            docker ps
        查看所有容器(包含已经停止的)
            docker ps -a
        查看最有一次运行的容器
            docker ps -l
        查看已经停止的容器
            doker ps -f status=exited

    (2)创建容器
        -i 运行容器
        -t 交互式
        -d 守护式
        -v 目录映射
        -p 端口映射
        --name 设置容器名称

        创建交互式容器(exit后会关闭容器)
            docker -it --name=容器名称 镜像名称:TAG /bin/bash
        创建守护式容器(exit后不会关闭)
            docker -id --name=容器名称 镜像名称:TAG
            进入容器
            docker exec -it 容器名称 /bin/bash
    (3)启动与停止
        启动容器
            docker start 容器名称/容器ID
        停止容器
            docker stop 容器名称/容器ID
    (4)文件的拷贝
        拷贝宿主机的文件到容器内
            docker cp 文件名 容器名:文件路径
        拷贝容器内的文件到宿主机
            docker cp  容器名:文件名 文件路径
    (5)删除容器
            docker rm 容器的ID/容器名
            注意:运行的容器不能删除
            docker rm `docker ps -a -q`  删除所有容器
    (6)容器的后台运行
        进入容器后 ctrl+p+q
        再次进入后台运行的容器  docker attach 容器ID
部署:
(1)部署mysql
    拉取mysql镜像 docker pull mysql:5.7
    基于镜像启动容器
        docker run -id --name=xxx -p 33306:3306 -e MYSQL_ROOT_PASSWORD=1223456 mysql:5.7
    远程连接mysql
        宿主机ip:33306
        如果有问题,表示没有开启mysql远程连接权限
        grant all....
(2)部署nginx
    拉取nginx镜像
    创建容器  -p 80:80

    静态资源服务器
        html:    /usr/share/nginx/html
    负载均衡服务器
        /etc/nginx/conf.d/default.conf
        重新加载配置文件
        nginx -t
        nginx -s reload



原文地址:https://www.cnblogs.com/wanghj-15/p/11451012.html