1. 程式人生 > >sqler sql 轉rest api 的docker image

sqler sql 轉rest api 的docker image

最新sqler 又釋出了一個版本,同時官方文件也更新,對於資料庫的連線有了詳細的說明

Dockerfile

為了方便以及較少大小,使用多階段構建,同時都通過環境變數執行

FROM alpine:latest as build
ENV VERSION=v1.6
WORKDIR /app
RUN apk update && apk add wget unzip
RUN wget https://github.com/alash3al/sqler/releases/download/${VERSION}/sqler_linux_amd64.zip
RUN unzip sqler_linux_amd64.zip && chmod +x sqler_linux_amd64
FROM alpine:latest
ENV APPVERSION=1.6
LABEL VERSION="sqler-${APPVERSION}"
LABEL EMAIL="[email protected]"
LABEL AUTHOR="dalongrong"
WORKDIR /app
ENV DSN="root:[email protected](127.0.0.1:3306)/test?multiStatements=true"
ENV RESP=:3678
ENV CONFIG=config.example.hcl
ENV REST=:8025
ENV DRIVER=mysql
ENV WORKERS=4
EXPOSE 3678 8025
ENV PATH=$PATH:/usr/local/bin
COPY config/config.example.hcl /app/config.example.hcl
COPY entrypoint.sh /app/entrypoint.sh
RUN chmod +x /app/entrypoint.sh
COPY --from=build /app/sqler_linux_amd64 /usr/local/bin/sqler
ENTRYPOINT ["./entrypoint.sh"]
 

entrypoint.sh

實際上就是執行的時候使用配置引數,映象添加了預設引數,參考env

#!/bin/sh
sqler -driver ${DRIVER} -rest ${REST} -dsn ${DSN} -config ${CONFIG} -workers ${WORKERS} -resp ${RESP}

構建

docker build -t dalongrong/sqler:1.6

說明

構建的映象已經push dockerhub 了

參考資料

https://github.com/rongfengliang/sqler-docker-compose
https://github.com/alash3al/sqler
https://cloud.docker.com/u/dalongrong/repository/docker/dalongrong/sqler