Docker打包发布

一. 什么是docker?

docker 是一个开源的应用容器引擎,是一个用于开发,交付和运行应用程序的开放平台。

1. 解决了环境配置问题

2.docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上。

3.容器是完全使用沙箱机制,相互之间不会有任何接口

二. docker 的优点?

1. 快速交付产品,快速部署应用. 就能够将现有的应用部署到其它机器上,从而实现一次打包,多次部署的目的。

2. docker基于镜像可以秒级启动各种容器. 启动docker相当于启动宿主机操作系统上的一个进程,为秒级别。

3.每一种容器都是一个完整的运行环境,容器之间相互隔离. 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

名词解释:

docker 镜像(Images):docker 镜像是用于创建 Docker 容器的模板,比如 Centos7 系统,win10镜像。

docker 容器(Container): 一个小型的Linux系统.容器是独立运行的一个或一组应用,是镜像运行时的实体。

三.docker安装

1. 设置 Docker 安装仓库

sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

2. 安装 Docker

sudo yum install docker-ce docker-ce-cli containerd.io

官方安装文档:https://docs.docker.com/engine/install/centos/

四. 打docker镜像前准备工作

1. 准备一个可运行的应用包

docker-demo-0.0.1-SNAPSHOT.jar  (一个springBoot项目)

 发起请求  http://localhost:8090/   输出: Hello World !

2.编写Dockerfile文件

Alpine 操作系统是一个面向安全的轻型 Linux 发行版

docker官方也支持Apline的服务且有jdk与Alpine集成好的镜像

 Dockerfile文件如下:

# 基于java镜像创建新镜像
FROM java:8-alpine

# 作者
MAINTAINER 12778

# 将jar包添加到容器中并更名为app.jar
ADD docker-demo-0.0.1-SNAPSHOT.jar app.jar

# 端口
EXPOSE 8080

# 运行jar包
ENTRYPOINT ["java","-jar","/app.jar"]

五.部署&发布

1. 上传jar包 

scp /Users/sunww/Documents/Docker/docker-demo-0.0.1-SNAPSHOT.jar  root@10.211.55.4:/docker

2.制作镜像

cd /docker

docker  build -t app .   # -t:指定新镜像名, .:表示Dockfile在当前路径

 打镜像的输出的日志如下:

成功提示:Successfully built 7793c98a965e  -----镜像id

使用docker images 查看刚刚打好的镜像文件,如下截图:

3.启动容器

docker run -d -p 8090:8090 app

-d:后台运行  -p:公开指定端口号  冒号前面是主机上的端口,冒号后面是容器内部的端口。

 容器启动成功,如下图:

使用docker ps 查看刚刚启动的容器,如下截图: 

六. 测试验证

 发起请求 http://10.211.55.4:8090/   输出:Hello World !

常用命令

镜像 
docker rmi 30f3184067bd   删除镜像 
docker images 查看镜像

容器
运行docker ps,可见所有运行中的容器
启动容器 docker run -d -p 8090:8090 app
停止运行容器(fca333c9ce5f代表容器id)  docker stop fca333c9ce5f
删除容器 docker rm fca333c9ce5
docker logs 2399e3449fd1 (容器id)  查看容器日志

进入/退出到容器里面去,控制台
docker exec -it 容器id  /bin/sh
退出容器:exit

docker run hello-world   测试docker是否安装成功


附上我今天分享的docker原文

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值