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
相关推荐
WangMingHua1112 小时前
LM Studio Docker 部署——本地大模型一键启动
docker
SelectDB21 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
曲幽1 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
武子康3 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠6 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工6 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信