容器构建步骤
创建镜像
- 从远程仓库拉取
docker pull mysql
- 根据现有项目的目录创建
需要先创建一个dockerfile配置文件,指定基础镜像,设置工作目录,并指定启动命令 ,一般复杂一点的容器都要通过dockefile去创建
FROM python:3.9
# 设置工作目录
WORKDIR /app
# 将当前目录中的文件复制到容器的工作目录中
COPY . /app
# 安装依赖项
RUN pip install -r requirements.txt
# 设置容器的默认启动命令
CMD ["python", "app.py"]
然后运行
docker build -f dockerfiletest -t test .
其中-f指定配置文件名称 -t指定镜像名称, . 表示当前目录,运行 docker build 命令时,Docker 将会在项目根目录下查找并使用指定的 Dockerfile 来构建 Docker 镜像
- 删除镜像
docker rmi test
创建容器
doker run + 镜像名称或者id
docker run test
运行时暂停
docker run -it preprocess:latest bash -c sh sleep 3600
列出所有容器, \t表示制表符分隔,能让输出排列更加整齐
docker ps --format "table {{.ID}} {{.Names}}\t{{.Status}}"
重启容器
docker restart containnerid
运行交互式容器,交互式容器可以进行问题排查,手动执行脚本以便定位问题
docker run -it my_image bash
更改command命令,在命令启动前进入容器
bash -c "sleep 3600 && echo 'Other operations'"
进入一个正在运行的容器
docker exec -it offline-common-mitm bash
查看运行日志
docker logs -f e48945e300f3
远程管理工具Portainer
Portainer是一个开源的轻量级容器管理工具,用于简化Docker环境的管理和操作。它提供了一个直观的Web界面,使用户可以轻松地管理Docker容器、镜像、网络和数据卷等
拉取
docker pull portainer/portainer
运行
docker run -d --name docker-web -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_db:/data portainer/portainer
然后可以在浏览器中使用ip + 端口进行访问