Docker新手在这里。我正在尝试在 GCE 上安装使用 Jib 制作的 Java 应用程序的 docker 映像,并将其连接到 CloudSQL。但是,由于 GCE 使 docker 映像使用 Container-Optimized 启动磁盘,当我 SSH 进入实例以尝试将其连接到 MySQL 时,由于“apt-get not found”而无法安装 mysql。
我读到我可以“构建自定义映像并配置 Jib 以将其用作基本映像”以便访问 apt-get,但我似乎找不到任何有关如何执行此操作的资源。
我尝试使用 alpine jdk 路线 + 使用 apk 而不是 apt-get,但有人告诉我不要使用 alpine jdk,因为我以后会遇到问题。
我已经在我的 build.gradle 中设置了这个:
jib {
from {
image = 'order-routing-helper-image'
}
to {
image = 'gcr.io/myimage'
}
}
编辑:码头文件:
FROM openjdk:11
VOLUME /tmp
ARG DEPENDENCY=target/dependency
COPY ${DEPENDENCY}/BOOT-INF/lib /app/lib
COPY ${DEPENDENCY}/META-INF /app/META-INF
COPY ${DEPENDENCY}/BOOT-INF/classes /app
ENTRYPOINT ["java","-cp","app:app/lib/*","com.mygroup.myapp.OrderRoutingApplication"]
但我在任何地方都没有 order-routing-helper-image,我只知道我需要那条线。
如果我运行 gradle jib,然后将 GCE 和 SSH 上的新映像挂载到其中,我可以运行“sudo apt-get install mysql-client”。现在我得到“apt-get: not found”。