文档中心 > 商家经营工具-开发指引

一、制作和上传自定义镜像

1. 镜像制作


关于镜像制作,可以在网上搜到很多相关资料,这里就不介绍了。(后面补充基本资料)

 

2. 镜像上传


镜像push到阿里云容器镜像服务,就可以在聚石塔容器平台使用了(平台上的自定义镜像)。

阿里云容器镜像服务文档:点击查看

聚石塔-资源视图-容器镜像服务:点击访问


1)新建命名空间

2)新建仓库


image.png

 

image.png

 

3)本地登录阿里云容器镜像服务


image.png


注意:

阿里云容器镜像服务登录用户名非淘宝nick,请从该页面(仓库详情页)直接拷贝登录命令。

阿里云容器镜像服务登录密码由镜像服务管理,非聚石塔账号的密码。

 

4)打tag并且push


image.png

 

二、使用自定义镜像


1)如果是第一次做应用发布的配置。


image.png


选择“高级设置”,并点击下一步,就可以选择自定义镜像了,并且可以做相关的配置。

 

2)如果之前做过了部署配置,可以新建或者/编辑部署配置,选择自定义镜像就行。


image.png

 

三、登录阿里云容器镜像服务的密码


注意,登录密码并非淘宝账号密码

第一次登录阿里云容器镜像服务的控制台,系统会生成一个初始登录密码。

如果初始密码忘记,可以在镜像服务控制台重置。


image.png

 

四、自定义镜像部署失败

1. 容器运行完退出


表象:部署日志,Started container xxx 紧接着 Back-off restarting failed container。


image.png


原因:说明容器运行完(docker run -d xxx)便退出了。K8S集群认为容器失败,尝试重新启动容器。

解决:重新打镜像,保证entrypoint或者cmd对应的进程不会退出

例子:

Dockerfile


FROM centos:7
ADD jdk1.6.tar.gz /usr/local/
ENV JAVA_HOME /usr/local/jdk1.6.0_43/
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH
ENV JAVA_FONTS $JAVA_HOME/jre/lib/fonts
RUN mkdir -p /acs/user
COPY start.sh /acs/user
RUN chmod +x /acs/user/start.sh
ENTRYPOINT /acs/user/start.sh

 

ENTRYPOINT启动脚本


#!/bin/sh
# 还可以设置环境变量,读取JAVA_OPT 设置jvm参数
java -jar test.jar
while :
do
  sleep 60
done


启动脚本最后的while循环,保证当前进程不会退出。

 

2. 其他部署错误


见应用部署常见问题:点击查看

 

五、JAR包运行java进程

1. 使用java6jar java7jar java8jar等官方镜像


官方镜像中的启动命令为  java ${JAVA_OPT} -jar ${JAR_DIR}/${JAR_NAME} & 。

 

2. 设置环境变量


image.png


注意,上传时不能直接上传要运行的jar包,因为部署时会默认做一次unzip解压。

举个例子,想运行hello-world.jar,可以将这个jar包打包成.zip文件。这样unzip后,hello-world.jar就会在/acs/code下了,那么环境变量就可以按照图中设置。

 

六、Tomcat官方镜像更多文件配置


tomcat8已支持配置web.xml,重新选择镜像,或者新建部署配置。

 

其他tomcat官方镜像或者已经配置好的部署配置,增加一个文件挂载项就行:

官方镜像中,tomcat安装在/acs/user/tomcat,例如,想自定义web.xml,可以设置文件挂载。


image.png


注:其实同理,tomcat/conf或者bin下的其他文件,也可以通过增加文件挂载项的方式进行自定义配置。

 

七、PHP官方镜像更多文件配置


php官方镜像中,配置文件在/acs/user/script/tpl目录,如果需要自定义.ini,php-fpm等文件,请设置文件挂载。例如:


image.png


FAQ

关于此文档暂时还没有FAQ
返回
顶部