一些常用的 docker 脚本

build&tag&push

#!/bin/sh
# docker-deploy.sh name repo tag

DOKCER_IMAGE_NAME=$1
REPO=$2
TAG=$3

IMAGE_ID=`docker build -q -t ${DOKCER_IMAGE_NAME} .`
echo docker build ${DOKCER_IMAGE_NAME} return image:${IMAGE_ID}
docker tag ${IMAGE_ID} ${REPO}:${TAG}
docker push ${REPO}:${TAG}

使用 docker 运行 mysql5.6

docker run -d \
--name local-mysql \
--hostname local-mysql \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-p 3307:3306 \
-v ~/docker/local-mysql/var/lib/mysql:/var/lib/mysql \
mysql:5.6

使用 MYSQL_ALLOW_EMPTY_PASSWORD=yes 关闭密码。

使用 docker 进行 maven 编译

docker run -it --rm \
--name maven-build \
-v ~/docker/local-maven/var/maven/.m2:/var/maven/.m2 \
-v "$(pwd)":/home/maven \
-w /home/maven \
-u 1000 \
-e MAVEN_CONFIG=/var/maven/.m2 \
maven:alpine \
mvn -Duser.home=/var/maven -DskipTests clean package

使用 nodejs 进行编译

docker run --rm \
-v "$(pwd)":/home/www \
-w /home/www \
mhart/alpine-node \
npm install --registry=https://registry.npm.taobao.org

docker run --rm \
-v "$(pwd)":/home/www \
-w /home/www \
mhart/alpine-node \
npm run build

docker run --rm \
-v "$(pwd)":/home/www \
-w /home/www \
mhart/alpine-node \
npm rebuild node-sass

代码生成器

docker run --rm \
--name renren-generaor-docekr \
-p 9090:8080 \
qyvlik/renren-generator-docker \
--spring.datasource.url=jdbc:mysql://localhost:3306/your_database \
--spring.datasource.username=root \
--spring.datasource.password=root \
--server.port=8080

docker部署spring-boot

spring-boot 推荐的 Dockerfile 写法

# FROM library/openjdk:8-alpine

FROM frolvlad/alpine-oraclejdk8
MAINTAINER "test <qyvlik@qq.com>"
VOLUME /tmp
WORKDIR /home/www
ADD target/*.jar /home/www/app.jar
RUN adduser -D -u 1000 www www \
    && chown www:www -R /home/www
EXPOSE 8080
USER www
ENV JAVA_OPTS=""
ENTRYPOINT exec java $JAVA_OPTS -jar /home/www/app.jar

参考 Spring Boot和Docker实践中遇到的问题

https://medium.com/@cl4r1ty/docker-spring-boot-and-java-opts-ba381c818fa2

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值