一、前言
docker这类部署工具,久而久之不使用非常容易忘记,甚至连操作命令都容易忘记。网上也有比较全的docker使用教程。这里做一个记录总结,纯属是温故知新。
二、docker部署应用
1、docker印象
docker首先让我想到的是是虚拟化技术,沙箱,集装箱。因为所有的docker教程配的插图都是一头鲸鱼背驼这一大堆集装箱。
意思就是将部署的应用部署到集装箱,集装箱是可以无缝移植的同时也是隔离的。
2、集装箱里有什么
docker里装的是镜像和容器,其中镜像就是安装的软件本身的文件集合,容器是镜像的一部分,或者可以说运行的容器是镜像的进程。
3、安装docker
使用docker首先得安装docker
docker是C/S架构,有客户端和服务端
Client: Docker Engine -- Community version: 20.10.12
Server: Docker Engine -- Community version: 20.10.12
在linux服务器环境下可以使用yum的方式安装docker
(1)用yum拉取阿里云镜像:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(2) yum安装:
yum install docker-ce
(3)查看docker版本:
docker version
(4)启动docker:
systemctl start docker
(5)设置docker开机自启
systemctl enable docker
三、如何将应用程序部署到docker
例子:
(1)java代码打成可以运行的jar包
(2)Dockerfile文件的制作
使用docker部署。在/home/docker/apps路径下创建"eureka"文件夹,并存放一个ctg-eureka.jar的镜像文件和构建镜像的Dockerfile文本文件。eureka.jar文件可使用别的服务器同目录下的ctg-eureka.jar文件。
Dockerfile文件的内容:
FROM java:8
VOLUME /tmp
ADD ctg-eureka.jar ctg-eureka.jar
EXPOSE 8761
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/ctg-eureka.jar"]
(3)加载镜像
在/home/docker/script路径下创建一个脚本文件"eureka.sh",内容为:
docker run --name ctg-eureka -d -p 8761:8761 ctg-eureka
通过脚本文件eureka.sh运行,脚本文件的运行需授予权限,在文件目录下命令:
chmod 755 eureka.sh
运行脚本命令:./ eureka.sh
四、docker常用维护命令
1.查看docker镜像: docker images
2.查看docker正在运行容器: docker ps
3.查看docker里的容器: docker ps -a
启停应用命令例子:
1.启动: docker start ctg-eureka
2.重启: docker restart ctg-eureka
3.停止: docker stop ctg-eureka