docker常用命令使用dockerfile构建镜像,推送到私有镜像仓库

docker常用命令和操作

# 创建镜像(进入dockerfile所在的路径)
docker build -t my_image:1.0 .

# 查看镜像
docker images

# 创建容器
docker run -dit --restart=always -p 9700:9700 --name my_container my_image:1.0 

# 查看容器
docker ps -a

# 进入容器
docker exec -it my_container /bin/bash

# 退出容器
exit

# 启动容器(容器状态为exited)
docker start my_container 

# 暂停容器
docker stop my_container 

# 删除容器
docker rm my_container 

######
# 将容器转化为镜像
docker commit my_container  my_image:1.2

# 将镜像转为压缩包
docker save -o my_package.tar my_image:1.2

# 删除原镜像
docker rmi my_image:1.2

# 将压缩包解压得到镜像
docker load –i my_package.tar



#############将镜像推送到远程仓库##########


##########################
####3创建基础镜像教程########
从dockerhub上拉取python镜像
docker pull python:3.10
# 创建容器不进入
docker run -dit --name=p1 python:3.10

# 进入容器
docker exec -it p1 bash

# 创建文件夹
mkdir app

# 推出容器
exit

# 将需要的依赖拷贝到镜像指定目录
docker cp torchvision-0.15.1+cpu-cp310-cp310-linux_x86_64.whl p1:app/

# 升级pip
pip3 install --upgrade pip


# 安装需要的依赖(加上镜像源)
pip install -r requirements_new.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

# 退出镜像
exit

# 将容器打包为镜像(确保容器正在运行)
docker commit p1 logistics_park:base

# 标记镜像
docker tag logistics_park:v1.5 10.82.27.215:10081/ai_platform/logistics_park:v1.5

# 将镜像推送到私有仓库
docker push 10.82.27.215:10081/ai_platform/logistics_park:v1.5

#######根据基础镜像#######构建镜像
# 构建镜像---使用dockerfile构建
docker build -t logistics_park:v1.1 .

# 容器运行命令:
docker run -dit --restart=always -p 9700:9700 --name logistics_park logistics_park:v1.1

# 实时查看容器日志(Ctrl + C退出)
 docker logs -f logistics_park

# 类似cat的查看方式
 docker logs logistics_park

dockerflie

使用dockerdocker build命令来构建

# docker build -f 指定dockerflie路径  -t  镜像名称:Tag   "."表示当前目录
# 如果dockerflie在当前目录,则可以省略
docker build -f path/to/Dockerfile -t myapp:latest .  
# 使用官方的Python运行时作为父镜像
FROM 10.82.27.215:10081/ai_platform/logistics_park:base

# 设置工作目录为/app
WORKDIR /app

# 将当前目录内容复制到位于 /app 的容器中
COPY . /app

# 安装任何需要的包
# RUN pip install torch-2.0.0+cpu-cp310-cp310-linux_x86_64.whl
# RUN pip install torchvision-0.15.1+cpu-cp310-cp310-linux_x86_64.whl
# RUN pip install --no-cache-dir -r requirements_new.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
RUN pip install ai_platform_dataset_sdk-1.0.0-py3-none-any.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
RUN pip install gevent==24.2.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

# 将/etc/localtime链接到上海时区文件
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 验证时区
RUN date

# 对外暴露的端口号
EXPOSE 9700

# 定义环境变量
ENV model=gpt-4-vision-preview
ENV api_key=d2ab5xxxxe4b929b
ENV api_base=https:XXXXXX.openai.azure.com/
ENV deployment_name=vision-preview-1
ENV api_version=2023-12-01-preview

# 当容器启动时运行python app.py
CMD ["python", "app.py"]

docker compose用法

相当于启动启动容器命令,可以在文件中指定参数,尤其适合需要同时启动多个容器,并且容器间存在交互的场景

docker-compose.yaml文件

version: '3'
services:
  logistics_park:
    image: logistics_park:datasets_v1
    container_name: logistics_park
    restart: always
    ports:
      - "9700:9700"

# 运行命令:
# docker compose up -d
# docker compose up --build -d   后台运行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

现实、狠残酷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值