屏蔽收索引擎抓取网站,wordpress只能访问主页,wordpress 好用的插件推荐,160加工网前言
那么这里博主先安利一些干货满满的专栏了#xff01;
首先是博主的高质量博客的汇总#xff0c;这个专栏里面的博客#xff0c;都是博主最最用心写的一部分#xff0c;干货满满#xff0c;希望对大家有帮助。
高质量博客汇总
然后就是博主最近最花时间的一个专栏…
前言
那么这里博主先安利一些干货满满的专栏了
首先是博主的高质量博客的汇总这个专栏里面的博客都是博主最最用心写的一部分干货满满希望对大家有帮助。
高质量博客汇总
然后就是博主最近最花时间的一个专栏《Docker从认识到实践再到底层原理》希望大家多多关注
Docker从认识到实践再到底层原理 什么是容器
通俗地讲容器是镜像的运行实体。镜像是静态的只读文件而容器带有运行时需要的可写文件层并且容器中的进程属于运行状态。即容器运行着真正的应用进程。容器有初建、运行、停止、暂停和删除五种状态。虽然容器的本质是主机上运行的一个进程但是容器有自己独立的命名空间隔离和资源限制。也就是说在容器内部无法看到主机上的进程、环境变量、网络等信息这是容器与直接运行在主机上进程的本质区别。容器是基于镜像创建的可运行实例并且单独存在一个镜像可以创建出多个容器。运行容器化环境时实际上是在容器内部创建该文件系统的读写副本。 这将添加一个容器层该层允许修改镜像的整个副本。
容器的生命周期
created初建状态running运行状态stopped停止状态paused 暂停状态deleted删除状态
命令控制状态转换 docker run 创建容器并立即启动运行进入运行状态 docker start 容器转为运行状态 docker stop 容器将转入停止状态 docker kill 容器在故障死机时执行 kill断电容器转入停止状态这种操作容易丢失数据除非必要否则不建议使用 docker restart 重启容器容器转入运行状态 docker pause 容器进入暂停状态 docker unpause 取消暂停状态容器进入运行状态 docker rm 删除容器容器转入删除状态。 killed by out-of-memory因内存不足被终止宿主机内存被耗尽也被称为 OOM非计划终止这时需要杀死最吃内存的容器 container process exitde异常终止出现容器被终止后将进入 Should restart?选择操作 yes 需要重启容器执行 start 命令转为运行状态。no 不需要重启容器转为停止状态。
容器命令详解
命令清单
命令别名功能docker createdocker container create创建容器docker rundocker container run运行容器docker attachdocker container attach连接到正在运行中的容器docker commitdocker container commmit将镜像提交为容器docker cpdocker container cp在容器和宿主机之间拷贝docker diffdocker container diff检查容器里文件结构的更改docker execdocker container exec在运行的容器中执行命令docker exportdocker container export将容器导出为 tardocker container inspect查看容器详细信息docker killdocker container kill杀死容器docker logsdocker container logs查看日志docker psdocker container lsdocker container listdocker container ps查看正在运行的进程docker pausedocker container pause暂停进程docker portdocker container port查看容器的端口映射docker container prune删除停止的容器docker renamedocker container rename重命名容器docker restartdocker container restart重启容器docker rmdocker container rmdocker container remove删除容器docker startdocker container start启动容器docker statsdocker container stats查看资源占用信息docker stopdocker container stop停止容器docker topdocker container top查看某个容器的资源占用docker unpausedocker container unpause继续运行容器docker updatedocker container update更新容器配置docker waitdocker container wait阻止一个或多个容器停止然后打印退出码
docker create
docker create [OPTIONS] IMAGE [COMMAND] [ARG...]参数和docker run基本上是一样的。
-i: 以交互模式运行容器通常与 -t 同时使用
-P: 随机端口映射容器内部端口随机映射到主机的端口
-p: 指定端口映射格式为主机(宿主)端口:容器端口
-t: 为容器重新分配一个伪输入终端通常与 -i 同时使用
--namenginx-lb: 为容器指定一个名称
-h mars: 指定容器的 hostname
-e usernameritchie: 设置环境变量
--cpuset-cpus0-2 / --cpuset-cpus0,1,2: 绑定容器到指定 CPU 运行
-m :设置容器使用内存最大值
--networkbridge: 指定容器的网络连接类型
--link[]: 添加链接到另一个容器
--volume , -v: 绑定一个卷
--rm :shell 退出的时候自动删除容器
--restart:自动重启docker logs
docker logs [OPTIONS] CONTAINER参数
-f, --follow: 跟踪日志输出
--since : 显示某个开始时间的所有日志
-t, --timestamps : 显示时间戳
--tail : 仅列出最新 N 条容器日志先启动一个容器。 查看现在正在运行的容器。
[rootALiCentos7:~]$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e8a7b485c2ae nginx:1.21.4 /docker-entrypoint.… About a minute ago Up About a minute 0.0.0.0:8080-80/tcp, :::8080-80/tcp mywebsite1查看日志。 -f选项可以实时输出结果。 docker attach
连接到正在运行中的容器。
docker attach [OPTIONS] CONTAINER--sig-proxy : 是否将所有信号代理默认是 true如果设置为 false退出的话不会影响容器否则退出会导致容器退出。很好理解就是连接到一个容器上。 在这个bash上是可以收到这个容器的io信息的如果我们此时^C这个容器也会被杀掉。
也就是说attach进去之后容器是可以收到这个bash发送的信号的。 但是如果带上--sig-proxy信号就会被代理。
docker exec
在容器中执行命令。
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]参数
-d : 分离模式: 在后台运行
-i : 即使没有附加也保持 STDIN 打开
-t : 分配一个伪终端
-e : 设置环境变量
-u, --user : 指定用户 name|uid[:group|gid]
-w, --workdir: 指定工作目录实操。 docker start 和 docker stop
很简单直接看例子。 但是docker stop有参数的。
-s : 发送的信号docker restart
重启容器
docker restart [OPTIONS] CONTAINER [CONTAINER...]-s : 发送信号docker kill
强制退出容器
参数-s :发送的信号
docker stop 发送的是 SIGTERM 信号docker kill 发送的是 SIGKILL 信号
docker kill会更暴力地杀死一个容器。 docker top
查看容器中运行的进程信息支持 ps 命令参数。
docker top CONTAINER [ps OPTIONS]容器运行时不一定有/bin/bash 终端来交互执行 top 命令而且容器还不一定有top命令可以使用 docker top来实现查看容器中正在运行的进程。 docker stats
显示容器资源的使用情况包括CPU、内存、网络 I/O 等。
docker stats [OPTIONS] [CONTAINER...]参数
--all , -a : 显示所有的容器包括未运行的。
--format : 指定返回值的模板文件。如 table,json
--no-stream : 展示当前状态就直接退出了不再实时更新。
--no-trunc : 不截断输出。docker container inspect
查看容器详细信息
docker container inspect [OPTIONS] CONTAINER [CONTAINER...]参数
-f : 指定返回值的模板文件。如 table、json
-s : 显示总的文件大小。可以重定向到一个.json文件里面去。
docker container inspect mywebsite mywebsite_docker_tmp.jsondocker port
用于列出指定的容器的端口映射或者查找将 PRIVATE_PORT NAT 到面向公众。
docker port CONTAINER [PRIVATE_PORT[/PROTO]]docker cp
在容器和宿主机之间拷贝文件
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATHdocker diff
docker diff CONTAINERdocker commit
从容器创建一个新的镜像。
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]参数
-a : 提交的镜像作者
-c : 使用 Dockerfile 指令来创建镜像可以修改启动指令
-m : 提交时的说明文字
-p : 在 commit 时将容器暂停docker commit mywebsite mywebsite-yufc:v1.0docker pause 和 docker unpause
暂停容器中所有的进程。
docker pause CONTAINER [CONTAINER...]docker rm
删除停止的容器。
docker rm [OPTIONS] CONTAINER [CONTAINER...]关键参数
-f : 通过 SIGKILL 信号强制删除一个运行中的容器docker wait
阻塞运行直到容器停止然后打印出它的退出代码。
docker wait CONTAINER [CONTAINER...]先把一个容器运行起来然后退出让docker wait打印退出码看看。 docker rename
给一个容器重命名
docker rename CONTAINER NEW_NAMEdocker container prune
docker container prune [OPTIONS]参数
-f, --force : 不提示是否进行确认docker update
更新容器配置
docker update [OPTIONS] CONTAINER [CONTAINER...]参数
--cpus cpu 数量
--cpuset-cpus : 使用哪些 cpu
--memory : 内存限制
--memory-swap 交换内存
--cpu-period : 是用来指定容器对 CPU 的使用要在多长时间内做一次重新分配
--cpu-quota 是用来指定在这个周期内最多可以有多少时间用来跑这个容器