今天本来是无聊搭了个springcloud把之前写过的一个项目拆分了一下,打算把项目jar包部署到服务器的时候,偶然间看到了这个玩意儿docker,于是就去了解了下,随便看了看其他大佬的文章,发现这尼玛是个高大上的东西啊,于是赶紧学习学习。。。
其实看了一天也没看懂什么,理论知识太多,不管这么多,先实际使用再说吧。。。。。。。
记录下基本一些操作。。记性不好 方便以后使用
公司服务器都是阿里云买的,7.0以上的centos,下面也是在centos7.6操作的
1.1查看centos版本号
cat /etc/redhat-release
sudo yum install docker
1.3安装完成后查看一下docker版本
docker -v
1.4编辑配置文件
vim /etc/systemd/system/multi-user.target.wants/docker.service 或(如果找不到文件的话)
vim /usr/lib/systemd/system/docker.service
修改标红线那一行,以下为修改后
ExecStart=/usr/bin/dockerd --registry-mirror=https://dttgbi1r.mirror.aliyuncs.com-current -H unix:///var/run/docker.sock -H 0.0.0.0:2375 \
–registry-mirror=https://dttgbi1r.mirror.aliyuncs.com-current是我的阿里云加速器。详见阿里云的镜像加速服务,是免费的
systemctl daemon-reload
systemctl restart docker.service
1.5启动docker
systemctl start docker
1.6开放防火墙端口(docker端口是2375)
firewall-cmd --permanent --zone=public --add-port=2375/tcp
1.7万事万物hello-world
拉取hello-world镜像
docker pull library/hello-world
运行
docker run hellow-world
1.查看所有镜像
docker images
2.从阿里云拉取或提交镜像
2.1登录授权
sudo docker login --username=阿里云用户名 registry.cn-shenzhen.aliyuncs.com
2.2拉取(把registry.cn-shenzhen.aliyuncs.com/yhd_springcloud/springcloud换成你对应的公网仓库地址)
sudo docker pull registry.cn-shenzhen.aliyuncs.com/yhd_springcloud/springcloud:[镜像版本号]
2.3提交
sudo docker login --username=阿里云用户名 registry.cn-shenzhen.aliyuncs.com
sudo docker tag [ImageId] registry.cn-shenzhen.aliyuncs.com/yhd_springcloud/springcloud:[镜像版本号]
sudo docker push registry.cn-shenzhen.aliyuncs.com/yhd_springcloud/springcloud:[镜像版本号]
3.启动镜像
docker run -d -p 端口号/端口号 镜像名:tag
4.删除镜像(删除镜像前必须先停止并删除对应的容器)
docker rmi 镜像名:tag
1.查看所有容器
docker ps -a
2.启动容器
docker start [CONTAINER ID] (CONTAINER ID支持模糊查询。不用输完整)
3.停止容器
docker stop [CONTAINER ID]
4.删除容器
docker rm [CONTAINER ID]
5.删除正在运行中的容器
docker rm -f [CONTAINER ID]
下面代码拷到项目里,如果之前build写的别的打包方式,直接覆盖掉
pom文件
cloud
org.springframework.boot
spring-boot-maven-plugin
com.spotify
docker-maven-plugin
1.0.0
build-image
package
build
${docker.image.prefix}/${project.artifactId}
服务器地址:2375
src/main/docker
/
${project.build.directory}
${project.build.finalName}.jar
Dockerfile文件(丢到springboot项目下的/src/main/docker目录)
FROM carsharing/alpine-oraclejdk8-bash
MAINTAINER 你的名字 你的邮箱
VOLUME /tmp
ADD euruka_server-x.jar(你的项目打包后的名字) app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
上面代码拷到项目里后,我用的eclipse,直接右键项目Run AS --> maven install
ok了,这时候去服务器docker images 你会看到你的刚刚部署的镜像。。到这里也算ojbk了。执行上面的操作就好了。
今天就到这里,怎么用已经会了,之后抽空深入了解一下。。