授权登录网站怎么做,个人工作室网站怎么做,网页设计实训总结2000字,wordpress调用用户名以下是我的打包过程#xff0c;大家可以借鉴。我也是第一次慢慢摸索#xff0c;打包一个公共项目#xff0c;自己上传。
如果嫌麻烦#xff0c;可以直接使用我的镜像#xff0c;直接跳到拉取镜像#xff01; 可以在任何地方的服务器进行拉取
docker打包当前din…以下是我的打包过程大家可以借鉴。我也是第一次慢慢摸索打包一个公共项目自己上传。
如果嫌麻烦可以直接使用我的镜像直接跳到拉取镜像 可以在任何地方的服务器进行拉取
docker打包当前dinky项目
先在当前目录下增加Dockerfile的文件。
因为官方的docker的dinky总有问题特别麻烦。
编辑内容
FROM openjdk:8-jdk-alpineWORKDIR /appRUN apk update \apk add --no-cache bash \mkdir -p /app/dinkyCOPY dinky /app/dinkyENV MYSQL_ADDR111.231.74.191:3306# CMD /app/dinky/auto.sh stop /app/dinky/auto.sh start 1.18执行打包命令
docker build -t junlin4040/dinky .推送镜像
docker push junlin4040/dinky可以在任何地方的服务器进行拉取
docker pull junlin4040/dinky启动容器
docker run -itd --name dinky --publish 8888:8888 --env MYSQL_ADDR111.231.74.191:3306 junlin4040/dinky注意MYSQL_ADDR 修改到你们的ip尽量别连我的。
然后注意你们的数据库需要自己初始化dinky和dinky的sql数据。
进入容器
docker exec -it dinky /bin/bash执行命令
cd dinky
找到相关命令。
执行
./auto.sh start 1.18如果提示 permission denied 执行修改权限命令我很直接直接
chmod -R 777 /app/dinky再次执行
./auto.sh start 1.18然后用你的ip:8888就可以如果是公网需要打开防火墙把8888加入进去。以下是打包dockerfile 碰到的一些问题 不断的修正。
tips 修改
FROM alpine:latestWORKDIR /appRUN apk update \apk add --no-cache bash \mkdir -p /app/dinkyCOPY dinky /app/dinkyENV MYSQL_ADDR111.231.74.191:3306# CMD /app/dinky/auto.sh stop /app/dinky/auto.sh start 1.18查看日志 tail -n 500 nohup.outnohup: cant execute java: No such file or directory打包环境还是得加java
FROM alpine:latest 修改为 FROM openjdk:8-jdk-alpine仿照例子
# jdk
FROM openjdk:8-jdk-alpine
# label
LABEL byhttps://github.com/xxd763795151/kafka-console-ui
# root
RUN mkdir -p /app cd /app
WORKDIR /app
# config log data
RUN mkdir -p /app/config mkdir -p /app/log mkdir -p /app/data mkdir -p /app/lib
# add file
ADD ./lib/kafka-console-ui.jar /app/lib
ADD ./config /app/config
# port
EXPOSE 7766
# start server
CMD java -jar -Xmx512m -Xms512m -Xmn256m -Xss256k /app/lib/kafka-console-ui.jar --spring.config.location/app/config/ --logging.home/app/log --data.dir/app/data本想使用scratch 不使用任何环境
FROM scratch
WORKDIR /dinky
COPY dinky /dinky
ENV MYSQL_ADDR111.231.74.191:3306特别的
RUN mkdir -p /app cd /app这个指令执行了两个操作
mkdir -p /app创建一个名为 /app 的目录。-p 选项表示如果目录已经存在则不会引发错误并且会递归创建所需的父目录。
cd /app将当前工作目录更改为 /app。这意味着接下来的指令将在 /app 目录中执行。因为要执行
mkdir
scratch改为Alpine请注意使用
-d 模式运行容器时如果容器没有一个长时间运行的进程容器可能会自动退出。这也可能是您在使用
docker run -d 后没有看到容器的原因之一。您可以通过检查容器的日志来查找容器为什么退出以及是否有错误发生。是的当您使用 docker run -it 在一个交互式终端中启动容器时即使容器内部没有长时间运行的程序容器也会保持运行状态。这是因为交互式终端会话会持续保持连接使容器保持活动状态。
在这种情况下当您退出交互式终端会话时容器可能会自动停止并退出。如果您希望容器在后台持续运行而无需保持与容器的交互可以使用 docker run -d 在后台模式下启动容器。