1.安装

  1. # 1、yum 包更新到最新
  2. yum update
  3. # 2、作用:安装需要的软件包, yum-util 提供yum-config-manager功能,
  4. # 另外两个是devicemapper驱动依 赖的
  5. yum install -y yum-utils device-mapper-persistent-data lvm2
  6. # 3、 设置yum源
  7. # 3.1、方案一:使用ustc的(推荐)
  8. # yum-config-manager --add-repo http://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
  9. # 3.2、方案二:使用阿里云(可能失败)
  10. yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  11. # 4、 安装docker;出现输入的界面都按 y
  12. yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7 containerd.io-1.4.6

2.设置镜像地址-需要重启

  1. cat <<EOF > /etc/docker/daemon.json
  2. {
  3. "registry-mirrors":["https://docker.mirrors.ustc.edu.cn"],
  4. "exec-opts": ["native.cgroupdriver=systemd"]
  5. }
  6. EOF
  7. sudo systemctl daemon-reload
  8. sudo systemctl restart docker

3.设置自启动

  1. # 设置开机启动docker服务: systemctl enable docker --now
  2. systemctl enable docker && systemctl start docker
  3. # 查看状态
  4. systemctl status docker

4.卸载

  1. ## 卸载docker
  2. yum remove docker*

5.查找镜像及版本

  • 进入docker hub的官网,地址:https://hub.docker.com

    6.报错

    Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate has expired or is not yet valid
    解决方法:
    1. # 更新系统时间
    2. ntpdate cn.pool.ntp.org

    7.拉取镜像

    1. docker pull nginx:1.20.1
    2. docker pull redis:6.2.4
    3. docker images
    4. # docker rmi 镜像名:版本号/镜像id

    8.操作

    ``` docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

【docker run 设置项 镜像名 】 镜像启动运行的命令(镜像里面默认有的,一般不会写)

-d:后台运行

—restart=always: 开机自启

docker run —name=mynginx -d —restart=always -p 88:80 nginx

查看正在运行的容器

docker ps

查看所有

docker ps -a

删除停止的容器

docker rm 容器id/名字 docker rm -f mynginx #强制删除正在运行中的

停止容器

docker stop 容器id/名字

再次启动

docker start 容器id/名字

应用开机自启

docker update 容器id/名字 —restart=always

进入容器内部的系统,修改容器内容

docker exec -it 容器id /bin/bash

提交改变 docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

docker commit -a “leifengyang” -m “首页变化” 341d81f7504f guignginx:v1.0

离线安装

将镜像保存成压缩包

docker save -o abc.tar guignginx:v1.0

别的机器加载这个镜像

docker load -i abc.tar

把旧镜像的名字,改成仓库要求的新版名字

docker tag guignginx:v1.0 leifengyang/guignginx:v1.0

登录到docker hub

docker login
docker logout(推送完成镜像后退出)

推送

docker push leifengyang/guignginx:v1.0

别的机器下载

docker pull leifengyang/guignginx:v1.0

docker logs 容器名/id 排错

docker exec -it 容器id /bin/bash

docker 经常修改nginx配置文件

docker run -d -p 80:80 \ -v /data/html:/usr/share/nginx/html:ro \ -v /data/conf/nginx.conf:/etc/nginx/nginx.conf \ —name mynginx-02 \ nginx

把容器指定位置的东西复制出来

docker cp 5eff66eec7e1:/etc/nginx/nginx.conf /data/conf/nginx.conf

把外面的内容复制到容器里面

docker cp /data/conf/nginx.conf 5eff66eec7e1:/etc/nginx/nginx.conf

docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

redis使用自定义配置文件启动

docker run -v /data/redis/:/etc/redis/ \ -v /data/redis/data:/data \ -d —name myredis \ -p 6379:6379 \ redis:6.2.4 redis-server /etc/redis/redis.conf

```

参考

https://www.yuque.com/leifengyang/oncloud/ox16bw