docker 创建Dockerfile

一、定义

1.用Dockerfile 创建镜像。

2.设置自启动方式二:

3.容器自启动

4.glm4 容器部署案例

二、实现

1.用Dockerfile 创建镜像。

创建空文件夹:

复制代码
mkdir /myfile
cd /myfile
pwd

2.编写Dockerfile

复制代码
FROM pytorch/pytorch:2.1.0-cuda12.1-cudnn8-devel
# 指定作者和邮箱
MAINTAINER cnki<cnki@123.com>
#设置环境
ENV MYPATH /usr/local
WORKDIR $MYPATH
#更新apt-get    
RUN apt-get update  
# 安装vim编辑器
#RUN apt-get install install vim

#安装库 ADD是相对路径,把requirement.txt添加到容器中,安装包必须要和Dockerfile文件在同一位置
COPY requirement.txt /usr/local
RUN cd /usr/local
RUN pip install numpy
RUN pip install -r /usr/local/requirement.txt -i https://pypi.tuna.tsinghua.edu.cn/simple


# ADD是相对路径,把包添加到容器中,安装包必须要和Dockerfile文件在同一位置
COPY hello.py /usr/local/

#启动文件添加到容器
COPY start.sh /usr/local/
RUN chmod +x /usr/local/start.sh 


EXPOSE 80

 #############遇到的问题,docker 执行指令无法执行#############
# 容器启动执行的默认命令   
CMD echo $MYPATH
CMD echo "success--------------ok"
CMD /bin/bash
ENTRYPOINT ["/bin/sh", "-c", "/usr/local/start.sh"]     #执行失败
CMD ["ls", "/usr/local"]   #执行失败

# docker run --entrypoint "sh /usr/local/start.sh" myenv:1.5   方式二: 找不到路径 

3.构建

在myfile目录下构建镜像

复制代码
# 注意:定义的TAG后面有个空格,空格后面有个点
# docker build -t 新镜像名字:TAG .
docker build -t myenv:1.5 .


4.运行镜像

docker run -d myenv:1.5

2.设置自启动方式二 : 简单粗暴

复制代码
vim /root/start.sh
######
chmod +x /root/start.sh
vim /root/.bashrc

写入的内容
############################################
# start hello.py 
if [ -f /root/start.sh ]; then
        /root/start.sh
fi


3.容器自启动

docker exec -it --restart=always xxxx /bin/bash

4.glm4 容器部署案例

复制代码
FROM pytorch/pytorch:2.1.0-cuda12.1-cudnn8-devel
# 指定作者和邮箱
MAINTAINER cnki<cnki@123.com>
#设置环境
ENV MYPATH /home
WORKDIR $MYPATH
#更新apt-get    
RUN apt-get update  

#安装库 ADD是相对路径,把requirement.txt添加到容器中,安装包必须要和Dockerfile文件在同一位置
COPY requirement.txt /home
RUN cd /home
RUN pip install -r /home/requirement.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
RUN pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch.org/whl/cu121
RUN pip install vllm==0.6.4


COPY glm4-9b-chat /home/glm4-9b-chat
#启动文件添加到容器
COPY start.sh /root
RUN chmod +x /root/start.sh 


EXPOSE 80
相关推荐
张32315 分钟前
K8s控制器学习难点
云原生·容器·kubernetes
qwy7152292581632 小时前
1-Docker Engine 安装前置环境配置
运维·docker·容器
菜菜艾4 小时前
基于llama.cpp部署私有大模型
linux·运维·服务器·人工智能·ai·云计算·ai编程
重生的黑客4 小时前
Linux开发工具:条件编译、动静态库与 make/makefile 入门
linux·运维·服务器
minji...4 小时前
Linux 线程同步与互斥(三) 生产者消费者模型,基于阻塞队列的生产者消费者模型的代码实现
linux·运维·服务器·开发语言·网络·c++·算法
.柒宇.4 小时前
nginx入门教程
运维·nginx
航Hang*5 小时前
VMware vSphere 云平台运维与管理基础——第2章(扩展):VMware ESXi 5.5 安装、配置与运维
运维·服务器·github·系统安全·虚拟化
SPC的存折5 小时前
MySQL 8组复制完全指南
linux·运维·服务器·数据库·mysql
运维行者_5 小时前
OpManager MSP NetFlow Analyzer集成解决方案,应对多客户端网络流量监控挑战
大数据·运维·服务器·网络·数据库·自动化·运维开发
sszdzq5 小时前
docker 安装 doris
运维·docker·容器