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
相关推荐
少妇的美梦7 小时前
logstash教程
运维
容器魔方7 小时前
Bloomberg 正式加入 Karmada 用户组!
云原生·容器·云计算
chen9457 小时前
k8s集群部署vector日志采集器
运维
chen9457 小时前
aws ec2部署harbor,使用s3存储
运维
muyun280012 小时前
Docker 下部署 Elasticsearch 8 并集成 Kibana 和 IK 分词器
elasticsearch·docker·容器
東雪蓮☆12 小时前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
qq_2642208912 小时前
LVS负载均衡群集和LVS+Keepalived群集
运维·负载均衡·lvs
乌萨奇也要立志学C++13 小时前
【Linux】进程概念(二):进程查看与 fork 初探
linux·运维·服务器
雨落Liy13 小时前
Nginx 从入门到进阶:反向代理、负载均衡与高性能实战指南
运维·nginx·负载均衡
Nazi613 小时前
k8s的dashboard
云原生·容器·kubernetes