KVM虚拟化与Docker基础实践-第三章

一、Docker镜像与容器基础操作

Docker镜像操作

经过测试,最近阿里云的加速器有点不稳定,可能出现拉取失败的情况,测试了多个加速器后,更换为以下这个比较稳定的,具体修改操作指令和截图如下(root用户):

tee /etc/docker/daemon.json <<EOF

{

"registry-mirrors": "https://docker.m.daocloud.io"

}

EOF

systemctl restart ddocker

然后我们拉取几个镜像,debian:12,nginx:latest,mysql:5.7,tomcat:latest

docker pull nginx:latest

docker pull mysql:5.7

docker pull debian:12

docker pull tomcat:latest

使用docker images命令查看拉取到的镜像

接着我们导出进行环境为tar文件,这样我们删除后可以快速恢复这些镜像。

docker save -o nginx-latest.tar nginx:latest

docker save -o mysql-5.7.tar mysql:5.7

docker save -o tomcat-latest.tar tomcat:latest

docker save -o debian-12.tar debian:12

导出成功后接下来我们删除这些镜像

docker rmi -f nginx:latest

docker rmi -f mysql:5.7

docker rmi -f tomcat:latest

docker rmi -f debian:12

再尝试从tar文件中恢复这些镜像

docker load -i nginx-latest.tar

docker load -i mysql-5.7.tar

docker load -i tomcat-latest.tar

docker load -i debian-12.tar

回复成功我们输入docker images又可以查看到这些镜像了。

Docker容器操作

接下来我们进入到Nginx 容器操作(创建、端口映射、查看、进入、停止、重启、删除、日志、资源监控),先执行docker run -d --name my-nginx -p 8080:80 nginx:latest创建并骑电动Nginx容器,映射主机8080端口到容器80端口,让后docker ps可以查看运行中的容器,docker ps -a可以查看所有容器包括停止运行的。然后docker exec -it my-nginx bash命令可以进入容器内部(交互式bash窗口),进入后我们可以执行一些基础操作,像ls ,cat /etc/os-release等,输入exit就可以退出了。之后是一些停止和启动命令

docker stop my-nginx

docker start my-nginx

docker restart my-nginx

最后docker logs my-nginx命令可以查看容器日志。

docker stats my-nginx命令可以查看容器资源使用情况,退出使用ctrl+c。

容器服务验证

先执行docker start my-nginx命令确保Nginx容器运行中,然后使用curl测试本地访问curl http://localhost:8080

下面的是Tomcat服务,和Nginx是一样的,只是地址有所改变,具体命令和截图如下:

docker run -d --name my-tomcat -p 8081:8080 tomcat:latest

curl http://localhost:8081

docker logs my-tomcat

docker stats my-tomcat

以上就是所有的内容了,如果你想要在做完后删除的话就继续执行以下命令:

停止所有运行中的容器

docker stop $(docker ps -q)

删除所有已停止的容器

docker container prune -f

删除所有未使用的镜像(悬空镜像)

docker image prune -a -f

删除所有未使用的卷(可选)

docker volume prune -f

查看清理后剩余资源

docker ps -a docker images

相关推荐
Elastic 中国社区官方博客13 小时前
你的 AI agent 不需要你的 API 密钥:使用 OAuth 2.1 对 Elasticsearch MCP 服务器进行身份验证
大数据·运维·人工智能·elasticsearch·搜索引擎·全文检索
FreeTinker13 小时前
AP AC组网中的远程运维挑战及内网穿透技术应用分析
运维
Huangjin007_14 小时前
【Linux 系统篇(十五)】进程 (三) :进程状态深度详解
linux·运维
RisunJan15 小时前
Linux命令-talk(终端实时对话)
linux·运维·服务器
流烟默15 小时前
Kubernetes 探针完全指南:健康检查机制深度解析
云原生·容器·kubernetes
NeilYuen15 小时前
【vemory】高性能KV存储AOF方案设计
linux·c++·redis·缓存
整点bug15 小时前
AI 运维该不该自动执行命令?
运维·ssh·openai
Kurisu_红莉栖15 小时前
关于docker的使用心得
运维·docker·容器
三言老师16 小时前
Rocky Linux 8.6 整机系统备份与迁移方案文档文档用途
linux·运维·服务器·网络
「PlanA」16 小时前
自动化流水线CSDN自动发布文章
运维·自动化