首先得准备一份Dockerfile
这里我们以ijry/lnmp7为例,下载地址: 下载后将其中的lnmp7文件夹上传到一台阿里云服务器上
这里注意,最好在公有云服务器上进行编译操作,因为公有云一般都有自己的开源镜像,速度快不容易出错,我试过在校园网等环境编译99.9%失败的概率。lnmp7这里用的是阿里云的ubuntu软件源,所以最好用阿里云,当然用别的也可以,对应去改下sources.list就好
这样有个坏处是当Dockerfile是我们自己编写需要测试镜像来看哪里需要修改时麻烦点,每次都要经历漫长的push&pull过程,所以优先还是试试自己本地网络下编译,这样调试方便点。
SSH登录服务器
ssh
安装docker
安装教程参考docker.com官网即可
注册Docker账号
在docker.com注册一个自己的账号
登录docker
在服务器输入docker login即可根据提示登录docker
装好后进入Docekrfile目录
cd ~/root/lnmp7
执行编译命令
docker build -t 你的docker用户名/lnmp7 ./ 接下来会进行很长时间的编译
上传到Docker Hub
刚刚编译好的镜像目前只存在本地服务器,如果希望分享给别人使用需要上传,执行docker push 你的docker用户名/lnmp7,等待命令执行完成。
别的机器使用该镜像
docker pull docker用户名/lnmp7