把程序制作成docker镜像

把程序制作成docker镜像

罗小黑
2022-05-27 / 0 评论 / 549 阅读 / 正在检测是否收录...
广告
温馨提示:
本文最后更新于2022年06月12日,已超过683天没有更新,若内容或图片失效,请留言反馈。

前言

docker相关命令: 点击

创建Dockerfile文件

先把程序单独放一个目录,这个app目录下面就是程序文件,我在这里面创建Dockerfile
l3odqct6.png

cd app 
vim Dockerfile  #(这里第一个字母要大写)

FROM ubuntu:21.04 AS runtime                     #基本镜像

ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /app                                     #创建容器的运行目录
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime      #宿主机和容器时间同步
RUN echo 'Asia/Shanghai' >/etc/timezone                          #宿主机和容器时间同步,这个可以和上面写在一块
COPY . /app                                     #容器的运行目录
run apt-get update \                            #安装程序的相关依赖
    && apt-get install -y wget \
    && wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \
    && dpkg -i packages-microsoft-prod.deb \
    && rm -rf packages-microsoft-prod.deb \
    && apt-get install -y apt-transport-https \
    && apt-get install -y vim \
    && apt-get update \
    && apt-get install -y dotnet-sdk-3.1
ENV ASPNETCORE_URLS=http://+:1066          
EXPOSE 1066                    #容器的端口

ENTRYPOINT ["dotnet", "Microsoft365_E5_Renew_X.dll"]          #执行程序


PS:参数的含义,自己自行百度吧,这里只大概说一下

打包成镜像

[root@VM-12-13-centos app]# docker build -t microsoft-365-e5:1.1.0 -f Dockerfile .    #docker build -t 镜像名:版本  -f  Dockerfile文件  注意这里有个'.' 不要忘记了

l3oe3z6c.png
l3oegj8f.png
出现上图说明创建成功,然后看一下

docker images

l3oehkyv.png

创建容器

docker run -dit \
-v $PWD/Microsoft365_E5_Renew_X/app/Deploy/Config.xml:/app/Deploy/Config.xml \
-v $PWD/Microsoft365_E5_Renew_X/appdata:/app/appdata \
-p 1066:1066 \
--name Microsoft365 \
--restart always \
microsoft-365-e5:1.1.0

上传dockerhub

首先我们先创建一下账号 https://hub.docker.com/
在Linux中登录

docker login

输入注册的用户和密码,然后我们先给镜像打个标签,因为上传格式为 用户名/镜像名:版本,其实在build的时候就可以命名成这样

docker tag  microsoft-365-e5:1.1.0    用户名/microsoft-365-e5:1.1.0

创建好之后,push一下,就完成了

docker push 用户名/microsoft-365-e5:1.1.0
0

打赏


评论 (0)

取消