千家信息网

docker容器管理和数据管理

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,1、概念容器类似于一个linux环境,是通过镜像创建启动的,可以理解为在镜像的最上一层创建一个可读写层,镜像本身是只读的,容器的读写不会改变镜像。2、容器管理2.1容器的创建#docker run -
千家信息网最后更新 2025年12月01日docker容器管理和数据管理

1、概念

容器类似于一个linux环境,是通过镜像创建启动的,可以理解为在镜像的最上一层创建一个可读写层,镜像本身是只读的,容器的读写不会改变镜像。

2、容器管理

2.1容器的创建

#docker run -itd --name nginx1 nginx:latest
基本的创建携带 i t d这三个参数即可,表示的意义分别如下;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-d: 后台运行容器,并返回容器ID;
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

nginx1和nginx:latest分别表示创建的容器名和所使用的镜像,创建完成后使用 docker ps 命令即可看到新建并运行的容器

#docker run -itd --name nginx2 -p 8080:80 nginx:latest
指定映射端口,将容器中的80端口映射到宿主机的8080端口上;这样就可以通过访问宿主机的8080端口达到访问容器的目的

#docker run -itd --name nginx3 --cpus 1 nginx:latest
限制cpu最大可用核数

#docker run -itd --name nginx5 --cpu-shares 512 nginx:latest
设置cpu的权重,默认值为1024;不设置或将其设置为0,均使用默认值;如果5个容器都是默认值1024,则平均分配

#docker run -itd --name nginx4 -m 100m nginx:latest
限制最大可用内存

#docker run -itd --name nginx6 -m 100m --oom-kill-disable nginx:latest
默认情况下,在出现out-of-memory(OOM)错误时,系统会杀死容器内的进程来获取更多的内存空间;在使用了-m限制容器内存后可以将oom-kill禁用

2.2容器的查询

#docker ps
查询当前运行的容器

#docker ps -a
这里我们先用docker stop nginx1关闭nginx1容器,再使用-a可以看到所有容器信息

#docker ps -aq
查询所有容器的id号

#docker log nginx2
查看容器的日志信息

#docker inspect nginx2
用来查询容器的详细信息,包含cpu、内容、端口、目录等信息

#docker top nginx2
查询容器的进程信息

#docker port nginx2
查看容器的端口映射

#docker stats nginx2
实时查看容器的资源利用率

2.3操作容器

#docker exec -it nginx2 bash
进入容器,退出后容器仍然为运行状态

#docker cp /tmp/test.txt nginx2:/tmp
拷贝文件到nginx2容器的/tmp目录下;将容器内的文件拷贝到宿主机则相反

#docker start|stop|restart nginx2
即启动、停止、重启容器

#docker rm nginx2
删除重启,在执行前需要保证容器为停止状态,否则rm失败

#docker commit nginx2 nginx:v2
将容器提交成为一个镜像,当前容器的改动会持久化到nginx:v2镜像中

3、数据管理

3.1 volumes方式

#docker volume create nginx-vol
创建volume,指定名称为nginx-vol

#docker volume ls
查询已经创建的volume

#docker volume inspect nginx-vol
查看volume的详细信息,可以看到对于的挂载路径

#docker run -itd --name nginxvol-test -p:8081:80 --mount src=nginx-vol,dst=/usr/share/nginx/html nginx:latest
使用volume创建容器,指定容器挂载目录为/usr/share/nginx/html

此时查看nginx-vol会发现容器中挂载目录下的html文件;在volume下新增文件也会同步到容器中

Docker inepct命令可以看到容器的volume信息

#docker volume rm nginx-vol
nginx-vol非使用时才可以执行删除操作

3.2 bind方式

#docker run -itd --name nginxBind-test -p:8082:80 --mount type=bind,src=/root/www/,dst=/usr/share/nginx/html nginx:latest
创建容器时携带type=bind,并指定src和dst目录

docker insepct 命令可以看到该容器的bind信息

容器 信息 镜像 端口 查询 目录 运行 文件 内存 命令 宿主 宿主机 限制 管理 最大 同时 拷贝 方式 状态 进程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 陈晓桦谈网络安全 网络安全为人民征文300字 access数据库dll 英语不好可以搞软件开发吗 广州软件开发者费用 西科大网络安全技术 多媒体互动魔墙软件开发 软件开发具有技术不确定性 搭建一个文件服务器要多少钱 数据库小数 什么样的软件开发好 中学生法制主题培训基地软件开发 dell服务器怎么关闭自动还原 深圳凡隆网络技术有限公 计算机网络安全知识题 数据库管理系统采取了什么 数据库安装外部组件发生异常 我的世界服务器小游戏塔防介绍 上海邦移网络技术有限公司 网络设备接入网络安全监测装置 河北特定软件开发厂家价格 香港云服务器维护步骤 广元云服务器代理 悍将传手机版怎么连接服务器 校园网络安全体系的意义 如何处理数据库连接问题 驱魔猎人征途服务器启动失败 小学生预防网络安全教案 关系数据库的基本概念简述 迷你世界网站服务器
0