Docker 是一种容器化技术,可以让你轻松地在隔离的环境中运行应用程序。以下是使用 Docker 运行程序的基本方法和步骤:
从现有镜像运行程序:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
例如运行一个简单的 Nginx 服务器:
docker run -d -p 80:80 nginx
常用选项:
-d
:后台运行(detached 模式)-p
:端口映射(主机端口:容器端口)-v
:卷挂载(主机目录:容器目录)--name
:为容器指定名称-e
:设置环境变量--rm
:容器退出时自动删除bash
docker run -v $(pwd):/app python:3.9 python /app/your_script.py
创建 Dockerfile:
FROM python:3.9
WORKDIR /app
COPY . .
CMD ["python", "your_script.py"]
构建镜像:
docker build -t my-python-app .
运行容器:
docker run my-python-app
项目结构:
myapp/
├── app.py
├── requirements.txt
└── Dockerfile
Dockerfile 内容:
FROM python:3.9
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
EXPOSE 5000
CMD ["python", "app.py"]
构建和运行:
docker build -t my-flask-app .
docker run -d -p 5000:5000 my-flask-app
Dockerfile 示例:
FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["node", "app.js"]
运行:
docker build -t my-node-app .
docker run -p 3000:3000 my-node-app
docker ps
docker ps -a
docker stop <container_id>
docker start <container_id>
docker exec -it <container_id> /bin/bash
docker logs <container_id>
.dockerignore
文件排除不必要的文件通过以上方法,你可以灵活地在 Docker 中运行各种类型的应用程序。