docker管理

  • 安装docker

查看centos版本: uname -r
Docker 要求 CentOS 系统的内核版本高于 3.10

升级软件包及内核(选做):

如果内核版本低于3.10 才执行yum update

  • Centos 7.x安装方法

安装docker
yum install docker

  • docker启动、停止管理

启动docker
[root@localhost ~]# systemctl start docker

[root@localhost ~]# docker -v

Docker version 1.12.6, build 3e8e77d/1.12.6

  • 将docker服务设为开机启动

[root@localhost ~]# systemctl enable docker

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

停止docker
systemctl stop docker

  • ★docker镜像源下载加速

参考: Docker 镜像加速 | 菜鸟教程

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):

{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}

之后重新启动服务:

$ systemctl daemon-reload

$ systemctl restart docker

  • docker操作命令

参考: Docker 安装 PHP | 菜鸟教程

镜像操作
| 操作 | 命令 | 说明 |

| ---- | ----------------------------------------------- | -------------------------------------------------------- |

| 检索 | docker search 关键字 eg:docker search redis | 我们经常去docker hub上检索镜像的详细信息,如镜像的TAG。 |

| 拉取 | docker pull 镜像名:tag | :tag是可选的,tag表示标签,多为软件的版本,默认是latest |

| 列表 | docker images | 查看所有本地镜像 |

| 删除 | docker rmi image-id | 删除指定的本地镜像 |

https://hub.docker.com/

容器操作pull(php、mysql、nginx等)
软件镜像(QQ安装程序)----运行镜像----产生一个容器(正在运行的软件,运行的QQ);

步骤:

````shell

1、搜索镜像

[root@localhost ~]# docker search tomcat

2、拉取镜像

[root@localhost ~]# docker pull tomcat

3、根据镜像创建容器,创建一个新的容器并运行一个命令

docker run --name mytomcat -d tomcat:latest

4、docker ps

查看运行中的容器

5、 停止运行中的容器

docker stop 容器的id

6、查看所有的容器

docker ps -a

7、启动容器

docker start 容器id

8、删除一个容器

docker rm 容器id

9、启动一个做了端口映射的tomcat

[root@localhost ~]# docker run -d -p 8888:8080 tomcat

-d:后台运行

-p: 将主机的端口映射到容器的一个端口 主机端口:容器内部的端口

10、为了演示简单关闭了linux的防火墙

service firewalld status ;查看防火墙状态

service firewalld stop:关闭防火墙

11、查看容器的日志

docker logs container-name/container-id

更多命令参看

https://docs.docker.com/engine/reference/commandline/docker/

可以参考每一个镜像的文档

★★容器挂载同步本地磁盘目录
注意:容器只能在创建时挂载本地磁盘目录,

docker run -it -v /home:/home -v /usr/local:/usr/local php /bin/bash 创建一个php的容器,挂载本地磁盘的/hom、/usr/local多个目录

已经创建好的容器无法再挂载其他本地目录!!但是可以通过制造镜像,然后通过镜像创建容器再挂载目录;

安装nginx
docker pull nginx:latest

创建容器、配置
参考:Docker部署Nginx并修改配置文件 - 渡劫锦官城 - 博客园

mkdir -p /data/docker/nginx/{vhost,log}

mkdir -p /data/docker/wwwroot

docker run --name my_nginx -d -p 80:80 \

-v /data/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \

-v /data/docker/nginx/conf/vhost:/etc/nginx/conf.d \

-v /data/docker/nginx/log:/var/log/nginx \

-v /home/wwwroot:/usr/share/nginx/html \

nginx

网课视频:

docker中的文件是可以拷贝出来的,也就是docker有自己的文件管理系统,只是默认的保存位置需要记忆!

docker cp fb07c72413e3:/etc/nginx/nginx.conf /data/docker/nginx/conf

docker的nginx容器创建后,需要把nginx容器的默认文件路径映射到当前系统的文件路径

在容器中执行执行文件操作
docker exec -it my_nginx "bin/bash" ,按exit 可以退出

my_nginx为创建的容易名称

通过ls命令,查看docker的文件目录,

在docker中通过find命令,查找nginx容器在docker中的虚拟安装目录
————————————————
版权声明:本文为CSDN博主「一木难求」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/longwind8/article/details/121458815

posted @ 2021-12-26 18:32  一木人生  阅读(102)  评论(0编辑  收藏  举报