linux怎么查看本机内存大小
275
2022-10-18
Docker快速入门之命令行
docker服务
#启动docker systemctl start docker #查看docker状态 systemctl status docker
安装镜像加速
tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": [" } EOF #重启docker守护进程 systemctl daemon-reload #重启docker服务 systemctl restart docker
开机启动服务
systemctl enable docker
docker命令分类
Docker环境信息 — docker [info|version] 容器生命周期管理 — docker [create|exec|run|start|stop|restart|kill|rm|pause|unpause] 容器操作管理 — docker [ps|inspect|top|attach|wait|export|port|rename|stat] 容器rootfs命令 — docker [commit|cp|diff] 镜像仓库 — docker [login|pull|push|search] 本地镜像管理 — docker [build|images|rmi|tag|save|import|load] 容器资源管理 — docker [volume|network] 系统日志信息 — docker [events|history|logs]
docker镜像命令
pull命令
docker pull nginx:1.21.5
images命令
#列出本机已有的镜像 docker images #列出指定REPOSITORY名称的镜像 docker images [REPOSITORY]
save命令
mkdir /home/volumes #两种方式都可以 docker save tomcat:9.0.20-jre8-alpine -o /home/volumes/tomcat9.tar docker save tomcat:9.0.20-jre8-slim > /home/volumes/tomcat9.slim.tar #多个镜像一起保存 docker save \ tomcat:9.0.20-jre8-alpine \ tomcat:9.0.20-jre8-slim \ tomcat:9.0.20-jre8 \ -o /home/volumes/tomcat9.0.20.tar
load命令
#两种方式都可以 docker load -i /home/volumes/linux.tar docker load < /home/volumes/tomcat9.0.20.tar
docker export和docker import的作用跟save和load命令类似,前者是导出/导入编译的后的文件,后者是保存/加载docker数据文件
search命令
#从官方仓库查找tomcat镜像-推荐直接去docker hub官网查询 docker search tomcat
inspect命令
#获取镜像的详细信息 docker inspect nginx:1.21.5 #只获取镜像详细信息中的某个属性-“Size”可替换为详情中的其他属性 docker inspect -f {{".Size"}} nginx:1.21.5
history命令
#获取镜像各层的信息 docker history nginx:1.21.5
tag命令
#标记本地镜像,将本地镜像归入某一仓库 docker tag tomcat:9.0.20-jre8-alpine 192.168.58.101/tomcat:9
rmi命令
#三种删除方式都一样 #推荐通过镜像名称和版本来删除,image的ID在终端长度未完全显示,ID值会出现重复 docker rmi tomcat:9.0.20-jre8-alpine docker image rm tomcat:9.0.20-jre8-alpine docker rmi ee7cbd482336 #强制删除,推荐先删除引用镜像的容器,再删除这个镜像 docker rmi -f nginx:1.21.5
prune命令
#清理临时镜像,可以释放存储空间 docker image prune #清理所有没有用到的镜像,可以释放空间 docker image prune -a
-a, --all : 删除所有没有用的镜像,而不仅仅是临时文件; -f, --force :强制删除镜像文件,无需弹出提示确认;
#查看
docker容器命令
run命令
#后台启动tomcat容器并映射到宿主机8080端口 docker run -itd -p 8080:8080 tomcat:9.0.20-jre8-alpine #启动后达梦8并将容器中的数据文件移动到“/dm8/data_init/”目录,然后通过挂载同步到宿主机目录,“--rm”启动后自动删除容器 docker run --rm -v /home/volumes/dm8:/dm8/data_init dm8dba:v8 mv /dm8/data/PROD /dm8/data_init/
-d, --detach=false: 后台运行容器,并返回容器ID -i, --interactive=false: 以交互模式运行容器,通常与 -t 同时使用 -P, --publish-all=false: 随机端口映射,容器内部端口随机映射到主机的端口。不推荐各位小伙伴使用该参数 -p, --publish=[]: 指定端口映射,格式为:主机(宿主)端口:容器端口,推荐各位小伙伴们使用 -t, --tty=false: 为容器重新分配一个伪输入终端,通常与 -i 同时使用 --name="nginx-lb": 为容器指定一个名称 -h , --hostname="laosiji": 指定容器的hostname -e , --env=[]: 设置环境变量,容器中可以使用该环境变量 --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型 --link=[]: 添加链接到另一个容器;不推荐各位小伙伴使用该参数 -v, --volume : 绑定一个卷,即挂载宿主机目录,用来做数据持久化 --privileged=false: 指定容器是否为特权容器,特权容器拥有所有的capabilities --restart=no:指定容器停止后的重启策略 no:容器退出时不重启 on-failure:容器故障退出(返回值非零)时重启 always:容器退出时总是重启,推荐各位小伙伴们使用 --rm=false: 指定容器停止后自动删除容器,不能以docker run -d启动的容器
docker挂载前同步数据
#临时启动一次,同步数据文件到宿主机,这一步相当于docker cp容器中的文件到宿主机 #启动后达梦8并将容器中的数据文件移动到“/dm8/data_init/”目录,然后通过挂载同步到宿主机目录,“--rm”启动后自动删除容器 docker run --rm -v /home/volumes/dm8:/dm8/data_init dm8dba:v8 mv /dm8/data/PROD /dm8/data_init/ #再正常创建启动创建达梦并添加挂载 docker run -itd --name dm8 -v /home/volumes/dm8:/dm8/data -p 5236:5236 dm8dba:v8 #临时启动一次,同步nginx.conf到宿主机,如果直接挂载的话会把宿主机的空文件夹同步到容器中,导致容器运行不起来,这一步相当于docker cp容器中的文件到宿主机 docker run --rm -v /home/volumes/nginx:/home/nginx nginx:1.21.5 mv /etc/nginx/nginx.conf /home/nginx #在正常创建启动nginx容器并添加挂载 docker run -itd --name nginx -v /home/volumes/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/volumes/nginx/html:/usr/share/nginx/html -p 80:80 nginx:1.21.5
logs命令
#获取容器名为tomcat9的日志 docker logs -f tomcat9
rm命令
#删除tomcat9容器 docker rm tomcat9 #强制删除tomcat9容器 docker rm -f tomcat9
ps命令
#列出所有运行中的容器 docker ps docker ps -a docker ps -q docker ps -qa #查询停止运行的容器 docker ps -a | grep Exited #查询停止运行的容器-只显示容器ID docker ps -a | grep Exited | awk '{print $1}'
a :显示所有的容器,包括未运行的。 -q :只显示容器编号。
组合命令
停止所有运行容器 docker stop $(docker ps -qa) 删除所有的容器 docker rm -f $(docker ps -qa) docker rm $(docker stop $(docker ps -q)) 删除所有的镜像 docker rmi -f $(docker images -q)
create命令
#只创建容器不启动,大部分参数跟run命令一样 docker create -it --name tomcat9 -p 8080:8080 9.0.20-jre8-alpine
启动、重启、终止容器
docker start :启动一个或多个已经被停止的容器
docker stop :停止一个运行中的容器
docker restart :重启容器
exec命令
#有bash命令的linux系统,例如centos docker run -it --name tomcat9.1 -p 8080:8080 tomcat:9.0.20-jre8-slim docker exec -it tomcat9.1 /bin/bash #没有bash命令的linux系统,例如alpine系统 docker run -it --name tomcat9.2 -p 8081:8080 tomcat:9.0.20-jre8-alpine docker exec -it tomcat9.2 sh
-i :即使没有附加也保持STDIN 打开 -t :分配一个伪终端
inspect命令
#获取容器的详细信息-“tomcat9”为容器名 docker inspect tomcat9
update命令
docker run -it --name tomcat9 -p 8081:8080 tomcat:9.0.20-jre8-alpine #更新容器restart策略,该命令还不成熟,推荐rm容器再run一个新的 docker update --restart always tomcat9
#创建自己的网络类型并指定网段 docker network create --subnet=172.18.0.0/16 mynetwork #查看创建的子网 docker network ls #通过镜像创建容器并启动 docker run -itd --name 容器名称 REPOSITORY:TAG /bin/bash #通过镜像创建容器并启动运行时指定自己的网络IP docker run -itd --name 容器名称 --net mynetwork --ip 172.19.0.103 REPOSITORY:TAG /bin/bash
docker空间清理
#docker空间占用 docker system df #docker空间清理 docker system prune #docker数据卷查看 docker volume list #docker无用数据卷清理 docker volume prune #清理临时镜像 docker image prune #清理所有没有用到的镜像 docker image prune -a #按过滤条件查询镜像 docker images|grep 192.168 #按过滤条件查询镜像只输出第三列(IMAGE ID) docker images|grep 192.168|awk '{print $3}' #按过滤条件查询镜像并删除 docker images|grep 192.168|awk '{print $3}'|xargs docker rmi
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~