Docker入门:新手一开始需要知道这些

Docker containers

现在开发什么项目,大家都在用Docker,很多新手朋友觉得Docker很难,其实入门没那么复杂。整理一下新手一开始需要知道的核心概念和常用命令,看完就能用起来了。

Docker到底是什么?

简单说,Docker就是把你的应用和它依赖的环境,一起打包成一个”盒子”,这个盒子能在任何机器上直接运行,不用再重新装依赖配环境了。解决了”我这儿能跑,你那儿不能跑”的问题。

这个”盒子”就叫 镜像,跑起来之后就叫 容器。一个镜像可以跑多个容器。

新手必须记住的几个命令

1. 拉镜像

docker pull nginx

从Docker Hub把别人做好的镜像拉到你本地,不用自己做。

2. 跑容器

docker run -d -p 8080:80 --name mynginx nginx
  • -d 后台跑
  • -p 8080:80 把你机器的8080端口映射到容器里的80端口
  • --name 给容器起个名字
  • 最后是镜像名

3. 看正在跑的容器

docker ps

4. 进容器里面

docker exec -it 容器id /bin/bash

进去之后就能像正常机器一样操作了。

5. 看日志

docker logs 容器id
# 实时看日志加 -f
docker logs -f 容器id

6. 停容器/删容器

docker stop 容器id
docker rm 容器id

Dockerfile是什么?

Dockerfile 就是你自己写一个文件,告诉Docker怎么一步步做你的镜像。比如:

FROM python:3.10-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "app.py"]

然后运行:

docker build -t myapp .
docker run -d -p 5000:5000 myapp

你的应用就打包好了,在哪都能跑。

Docker Compose 又是什么?

如果你一个项目需要好几个容器(比如web+数据库+缓存),一个个跑太麻烦,用Docker Compose一个配置文件就能把所有容器都起好,很方便。

配置文件一般叫 docker-compose.yml,然后:

# 启动所有服务
docker-compose up -d
# 看日志
docker-compose logs -f
# 停掉所有服务
docker-compose down

新手常见坑

  1. 端口映射不对:记得容器里的端口要映射出来,不然访问不到
  2. 数据没挂载:数据库数据要挂载到本地,容器删了数据不会丢
  3. 不用追求太复杂:先学会跑别人的镜像,再学着自己做,循序渐进

总结

Docker真的没有你想象的那么难,记住几个核心概念和常用命令,就能满足日常开发大部分需求了。用几次就熟了,现在不管开发还是部署,有了Docker真的省心很多。

你刚开始学Docker的时候踩过什么坑?欢迎留言交流。


新手入门向总结,老司机轻拍。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部