docker常用命令数据卷以及搭建lnmp环境(二)

docker操作镜像的命令

查找镜像  https://hub.docker.com

docker search  image    //命令搜索 image  

docker  image  --help

pull       docker  image  pull    /  docker  pull   从仓库 拉去镜像

push     docker  image  push    /  docker  push   镜像推送到仓库

ls          docker image ls  / docker images  列出所有镜像

rm         docker image rm  /  docker rmi  删除本地镜像


save     镜像打包成tar文件  docker image save  镜像id  -o  tar文件名

load     tar文件加载镜像  docker image load  –i  tar文件

tag    标记tag  docker image tag  镜像id  nginx:1.16

prune  删除未使用的镜像

build    Dockerfile构建镜像

inspect  查看镜像的详情信息


docker操作容器的命令

docker container  --help

查看容器

ps  ls  list

docker  ps    docker container  ls/ps/list    选项  -a  所有的   -l 最近运行

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
bf09b3ec40f1             centos:6            "/bin/bash"          8 minutes ago       Exited (0) 7 minutes ago                       sharp_neumann

运行 一个容器

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

docker run  /  docker container run     容器运行必须前台有进程运行 否则会退出

选项

-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
--name:   为容器指定一个名称;
-h:       指定容器的hostname;
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

docker run -d  --name web-6  -p 90:80  nginx

-P: 随机端口映射,容器内部端口随机映射到主机的高端口
--link   添加链接到另一个容器;
--restart   启动docker自动启动  always/no(默认)
-m   --memory   限制使用的最大内存
-cpus   限制使用的cpu数量

-v  绑定数据卷
--mount  挂载文件系统到容器


exec  在容器中执行命令

-i   标准输入
-t  分配伪终端

docker exec -it  容器名/容器id     /bin/bash

 

logs  查看容器的输出日志

docker  logs  容器名  


stats  查看容器的资源使用

docker  stats  容器名

选项

--no-stream

inspect  查看容器的具体信息
cp  拷贝文件到容器  

docker cp anaconda-ks.cfg   web5:/

top  查看容器运行的进程

stop/start/restart  停止启动容器

rm  删除容器

update 更新容器资源限制

数据卷(data volume)

Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker中称为数据卷(Data Volume)。数据卷可以用来存储Docker应用的数据,也可以用来在Docker容器间进行数据共享。数据卷呈现给Docker容器的形式就是一个目录,支持多个容器间共享,修改也不会影响镜像。

volume  

选项 
create   创建数据卷
inspect  查看
ls           列出数据卷
prune     删除不用的数据卷
rm          移除数据卷

docker volume create  vol_test

第一种方式  -v

docker run -d --name web5 -p 99:80  -v vol_test:/usr/share/nginx/html   nginx

直接执行 自动创建数据卷

docker run -d --name web6 -p 100:80  -v nginx_test:/usr/share/nginx/html  nginx

直接挂载道目录   原来的文件没有了

docker run  -d --name web16  -p 2223:80  -v /home/www:/usr/share/nginx/html  nginx

第二种   --mount

docker run -d  --name web9 -p 1111:80 --mount src=nginx_test,dst=/usr/share/nginx/html  nginx

 

数据卷的特性

数据卷可以在容器间共享和重用数据
数据卷可以在宿主和容器间共享数据
数据卷数据改变是直接修改的
数据卷的生命周期一直持续到没有容器使用它为止


搭建lnmp环境

docker pull nginx:1.17
docker pull php:7.3-fpm
docker pull mysql:5.7

启动mysql

docker run -d  --name  lnmp_mysql   -e MYSQL_ROOT_PASSWORD=123456   mysql:5.7

启动PHP

docker run -d  --name  lnmp_php  --link lnmp_mysql:mysql  -v /home/www:/usr/share/nginx/html  php:7.3-fpm

启动nginx

docker run -d --name lnmp_nginx -p 80:80  -v /home/www:/usr/share/nginx/html  --link lnmp_php:php  nginx:1.17

nginx配置

location ~ \.php$ {
        root           /usr/share/nginx/html;
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }


容器 安装vim

apt-get update  

apt-get install vim

宿主机查找容器文件

find  /   -name  文件名

安装PHP扩展

docker-php-ext-install    pdo_mysql   mysqli

pecl install  redis    docker-php-ext-enable redis

socket/workerman/rpc/docker群:604438441

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_33716731

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值