第一次用 Docker 把小服务跑起来:新手记录
以前装小服务我都是直接往系统里装,装得多了环境越来越乱,想卸载又怕删错东西。最近试着用 Docker 把服务装进容器里跑,感觉清爽了不少,记一下过程。
先确认 Docker 能用:docker --version 能输出版本,再跑一遍官方的 hello-world 镜像,能打印欢迎信息就说明环境没问题。
真正上手就三条命令。以 nginx 为例:先 docker pull nginx 拉镜像,然后 docker run -d --name web -p 8080:80 nginx 启动容器。这里 -d 是后台运行,--name 给容器起个名字方便后面管理,-p 8080:80 是把宿主机的 8080 端口映射到容器的 80 端口。启动后浏览器打开宿主机 IP 加 8080,就能看到 nginx 的欢迎页。
日常管理就靠几个命令:docker ps 看正在跑的容器,docker logs web 看日志,docker exec -it web sh 可以进到容器里面看个究竟,停启和删除分别是 docker stop、docker start 和 docker rm。
有一个坑要提醒:数据不要只放在容器里,容器一删数据就没了。重要的文件用 -v 把宿主机目录挂载进去,比如 docker run -d -v /data/html:/usr/share/nginx/html nginx,这样网页文件实际存在宿主机上,容器随便重建都不怕。
另外两个小经验:端口被占用时容器会启动失败,先查一下是谁占了端口再处理;改完配置文件要重启容器才生效,别改了半天以为没保存。
总的来说,Docker 对我最大的价值是隔离和可抛弃:环境弄坏了删掉重建,不污染宿主机。新手不用一上来就学编排,先拿一个小服务练手,把 ps、logs、exec 这几个命令用熟就够了。
- 点赞
- 收藏
- 关注作者
评论(0)