镜像的打包、提交、下载和安装。
首先在 docker hub 中申请一个账号,并创建一个镜像库 repository.
- 本地下载信赖镜像(基础镜像)
docker pull ubuntu
可用 docker images
来查看本地所有的镜像
- 本地制作镜像
run 起来 ubuntu 镜像,指定一个 volume,将本地项目中生成的 bin 文件 copy 到/data/
目录下。退出后执行docker commit -m 'commit message' <contain_name> <new_image_name>
命令生成镜像 - 本地登陆 docker hub
docker login --username=robincai1992 --password=xxx
- push
docker push robincai1992/photoweb
- pull
docker pull robincai1992/photoweb
- run
docker run -d -p 8080:8080 --name photoweb robincai1992/photoweb /data/main
-d
后台运行
-p
暴露端口
/data/main
执行命令
--name photoweb
指定容器 name 为 photoweb
页面访问 8080
报错 open ./uploads: no such file or directory
,所以需要一些更改。
- 关闭容器
docker stop photoweb
- 由镜像 run 起一个容器
docker run -it --name photoweb2 robincai1992/photoweb bash
最好要指定一个名字,因为你要做的是个变更操作,写下名字好标记
- 变更一下里面的文件
mv /data/main /home/workspace/
mkdir /home/workspace/uploads
- commit
docker commit -m 'update photoweb2' photoweb2 photoweb:v1.1
- 现在是下面的状态(已删除了旧的镜像
robincai1992/photoweb
),当你想 push 时发现新创建的是photoweb:v1.1
的镜像名:tag,所以你需要改为robincai1992/photoweb:v1.1
image.png
docker tag photoweb:v1.1 robincai1992/photoweb:v1.1
docker push robincai1992/photoweb:v1.1
- 重新 run 起来
docker rm photoweb // 删除旧的容器
docker run -d --name photoweb -p 8080:8080 robincai1992/photoweb:v1.1 /home/workspace/main
通过 Dockerfile 创建镜像
- 在项目中根目录创建 Dockerfile 内容如下
FROM ubuntu
COPY ./ /home/workspace/fileDisk
EXPOSE 8080
- 生成镜像
docker build . -t robincai1992/filedisk:v1.0
- push 镜像
docker push robincai1992/filedisk:v1.0
- run 起来
docker run -it -d --name filedisk -p 8080:8080 robincai1992/filedisk:v1.0 /home/workspace/fileDisk/main
(草草地一边学一边写,上面的操作自己学了个差不多,其内容写的不好,没有什么贡献给他人的价值,也就算了吧,本来这些操作就很基础,其他人自己动手应该也差不多能学会,用不到我这文章)
网友评论