shell +docker + alibabacloudtool

2020-03-22  本文已影响0人  lancelot123
shell 发布脚本
# 移除并打包,跳过测试代码
mvn clean package -Dmaven.test.skip=true
# 编译本地docker 镜像
docker build -t lance/cloudapp:latest .
# 动态获取镜像id
IMAGEID=$(docker images lance/cloudapp -q)
RESULT_IMAGEID=$(echo $IMAGEID)
# 输出ID
echo $RESULT_IMAGEID
# 打标签
docker tag $RESULT_IMAGEID registry.cn-beijing.aliyuncs.com/ns-llf/resp-cloudapp:latest
# 推送到aliyun
docker push registry.cn-beijing.aliyuncs.com/ns-llf/resp-cloudapp:latest

docker-compose.yml 方式
version: '2'
services:
  north-service:
    image: registry.cn-beijing.aliyuncs.com/ns-llf/resp-cloudapp
    container_name: server-api
    ports:
      - "9999:9999"
    environment:
      - spring.profiles.active=prod
    volumes:
      - /www/web/51ls_cc/public_html/north_inspect/:/www/web/51ls_cc/public_html/     #宿主机:容器目录  挂载到宿主机

docker 命令行操作
# 停止容器
docker stop  `docker ps -aq --filter name=server-api`
# 移除容器
docker rm    `docker ps -aq --filter name=server-api`
# 移除 镜像 指定镜像源
docker rmi   `docker images -q --filter reference=registry.cn-beijing.aliyuncs.com/ns-llf/resp-cloudapp`
# 登录远程镜像源
docker login --username=liulf123@gmail.com registry.cn-beijing.aliyuncs.com -p [xxxxxx]
# 推送镜像
docker pull registry.cn-beijing.aliyuncs.com/ns-llf/resp-cloudapp:latest
# 后台进程方式启动docker
docker-compose up -d
Dockerfile
# 获取公共镜像,这个镜像比较小
FROM java:openjdk-8-alpine
# 开放端口
EXPOSE 9999
# 映射容器运行程序目录
VOLUME /tmp
# 添加本地jar 到容器
ADD target/test.jar  /app.jar
RUN sh -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
上一篇下一篇

猜你喜欢

热点阅读