Docker部署springboot项目

Docker部署springboot项目

Springboot项目

@RestController
public class DockerController {
    @RequestMapping("/")
    public String index() {
        return "Hello Docker!";
    }
}

@SpringBootApplication
public class DockerApplication {
	public static void main(String[] args) {
		SpringApplication.run(DockerApplication.class, args);
	}
}

Docker

安装docker

使用官方安装脚本自动安装

安装命令如下:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh

启动:

systemctl start docker

参考:cenos安装docker

部署

阿里镜像加速

关于加速器的地址,您登录容器镜像服务控制台后,在左侧导航栏选择镜像工具 > 镜像加速器,在镜像加速器页面就会显示为您独立分配的加速器地址。

{
    "registry-mirrors": ["<your accelerate address>"]
} 

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://c6n8vys4.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
打包

springboot项目打成jar包(spring-boot-docker-1.0.jar)上传到centos某个目录下(比如/docker)

在/docker下创建文件Dockerfie,粘贴以下内容:

FROM openjdk:8-jdk-alpine
#VOLUME 指定了临时文件目录为/tmp
#其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
ADD spring-boot-docker-1.0.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
镜像

在当前目录(/docker)下,-t生成镜像:

docker build -t image-springboot .

创建并运行容器:

docker run -d -p 8089:8080 --name xxx-name image-springboot

-d 表示后台运行, -p是映射端口前面是宿主机端口,后者是容器端口。
--name表示创建容器的名字,springboot表示镜像tag

查看运行的容器:

docker ps [-a]

CONTAINER ID   IMAGE        COMMAND                  CREATED          STATUS          PORTS                    NAMES
7f6d65b805bc   image-springboot   "java -Djava.securit…"   16 minutes ago   Up 16 minutes   0.0.0.0:8089->8080/tcp   docker-springboot-demo

停止运行的容器:

docker stop [容器ID]

丢弃Docker容器:

docker rm -f [container id | name]

查询镜像:

docker images

删除镜像:记得先删除容器

docker rmi [镜像名称]

容器启动失败 Exited(1)

// 查看容器启动失败原因
docker logs [容器id]

测试

http://宿主机IP:8089/

Hello Docker!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值