Docker安装
Docker的安装可以参考 https://docs.docker.com/ 下面的 Get Docker / Docker CE / Linux, 需要关注的主要是CentOS和Ubuntu, 可以通过添加仓库地址再通过 yum install 或 apt install安装, 也可以下载rpm包和deb包进行安装.
对应Ubuntu18.04 64bit系统的deb下载地址是 https://download.docker.com/linux/ubuntu/dists/bionic/pool/stable/amd64/
安装完之后, 会自动在系统中添加 docker 服务
禁止docker随系统自启动
sudo systemctl disable docker
设置docker的mirror, 否则build会非常慢
$ sudo edit /lib/systemd/system/docker.service # 修改以下这行, 加上后面的 --registry-mirror=https://docker.mirrors.ustc.edu.cn ExecStart=/usr/bin/dockerd -H fd:// --registry-mirror=https://docker.mirrors.ustc.edu.cn
将自己的用户加入docker用户组, 用id命令查看是否生效. 需要退出登录使group设置生效, 如果不生效则重启.
# 加入用户组 sudo usermod -aG docker milton # 查看结果 getent group # 或者 cat /etc/group
# 查看是否生效
id
Docker常用命令说明
# 测试运行Hello World docker run hello-world # 查看版本 docker --version # 查看信息 docker info # 查看image列表 docker image ls --all # or docker images --all
# 删除image
docker rmi [IMAGE ID] # 使用当前目录的Dockerfile制作image, 用-t指定image名称 docker build -t scot-eureka . # 运行docker容器, 其中name为容器名称, -p指定端口映射 docker run -d --name eureka -p 8762:8761 scot-eureka # 查看运行中的docker 及其端口 docker ps # 查看所有的docker容器(包括未在运行的) docker ps -a
# 删除docker容器
docker rm [docker-name | container-id] # 查看docker端口映射 docker port [docker-name | container-id] # 查看docker运行日志 docker logs [docker-name | container-id] # 停止docker容器 docker stop [docker-name | container-id]
.
Docker部署Spring Boot jar项目
编写Dockerfile
FROM java:8 ADD target/scot-eureka.jar scot-eureka.jar ENTRYPOINT ["java", "-jar", "/scot-eureka.jar"]
制作Docker Image
docker build -t scot-eureka .
启动Docker container
docker run -d --name eureka -p 8762:8761 scot-eureka
其中8761是jar本身打开的端口, 8762是从外部(容器IP或者本机IP)去访问的端口, 可以通过 docker ps 或者 docker port [docker-name | container-id] 查看映射关系
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 2ea7392a8b51 scot-eureka "java -jar /scot-eur…" 25 minutes ago Up 25 minutes 0.0.0.0:8762->8761/tcp eureka
这时候就可以通过容器或本机的 IP:8762 端口去访问eureka.jar启动的服务了.
.