后知后觉的学习了下docker入门,还有一些问题和不解地方,留待以后慢慢琢磨。
一、操作系统:windows7专业版;docker版本:19.03;JDK版本:1.8.
二、安装docker:
1、docker好像没有直接支持win7的版本,看网上的文章说要下载docker-toolbox,于是去网站: https://github.com/docker/toolbox/releases 下载安装文件。
2、安装docker-toolbox,没有什么好说的,一路next就好。
本机之前没有安装git,效果更好;否则在这里不要勾选“Git for windows”。而且每次运行的时候,还需要选择Git的bash.exe文件。
另外在最后的安装过程里,会安装Oracle VM VirtualBox,这个最好也安装上,电脑上不差那点空间。我第一次安装的时候,看到oralce开头直接忽视,导致后边有问题,又卸载重新安装了一遍。
3、运行docker。安装成功后,桌面上出现了3个快捷图标:
双击或以管理员身份运行这个“Docker Quickstart Terminal”,出现下面这样的工作界面:
这里可以输入任何docker命令,比如 docker version。
4、运行第一个docker镜像(对于镜像,容器,仓库等概念不做详细解释了):
docker run hello-world
本地目前还没有这个镜像,所以会从公共仓库里下载名字为hello-world的镜像,并运行这个镜像。如果在控制台出现了“Hello from docker.”就表运行成功了。
5、正常编写并打包一个springboot项目,得到一个可以执行的jar,如practice-1.0.0.jar。
在docker-toolbox新建一个目录(docker-toolbox里的路径和主机的文件夹对应),新建目录的用意是构建镜像时,不会把额外的内容放进去。比如在主机D:/test目录下存放打包好的practice-1.0.0.jar,在docker-toolbox中,进入/d/test目录。
首先编写dockerFile文件,告诉docker怎么构建一个镜像,文件内容如下:
FROM ascdc/jdk8
ADD practice-1.0.0.jar app.jar
EXPOSE 9400
ENTRYPOINT ["java","-jar","/app.jar"]
FROM表示使用的jdk镜像,ADD表示把主机的jar包复制到docker服务器上,重命名为app.jar,EXPOSE表示端口,ENTRYPOINT表示容器运行时执行的命令。
6、执行构建命令:docker build -t practice .
7、运行容器: docker run --name practice practice(使用--name选项,便于对容器执行停止,启动,删除等操作)
8、运行容器时映射端口: docker run --name practice -p 127.0.0.1:9401:9400 practice
来源:oschina
链接:https://my.oschina.net/u/161393/blog/4315290