docker - 如何在 openjdk docker 镜像中安装 sqlcmd?
问题描述
我想从部署在 Azure kubernetes 上的容器连接到 Azure SQL Server,尤其是使用 sqlcmd。
类似的东西
如何在 openjdk docker 映像中安装 sqlcmd?我是否还需要在 docker 映像上安装 .Net Framework?
解决方案
这是我正在使用的
ARG UBUNTU_VERSION=18.04
FROM ubuntu:$UBUNTU_VERSION
ARG MSSQLTOOLS_VERSION=17.4.1.1-1
ENV PATH=/opt/mssql-tools/bin:$PATH
RUN apt-get update \
&& apt-get install -y curl apt-transport-https locales gnupg2 \
&& locale-gen "en_US.UTF-8" \
&& export `grep "VERSION_ID" /etc/os-release | sed -e 's/^VERSION_ID=\"/VERSION_ID=/' -e 's/\"$//'` \
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
&& curl https://packages.microsoft.com/config/ubuntu/$VERSION_ID/prod.list | tee /etc/apt/sources.list.d/msprod.list \
&& apt-get update \
&& ACCEPT_EULA=Y apt-get install -y mssql-tools=$MSSQLTOOLS_VERSION unixodbc-dev \
&& apt-get remove -y curl apt-transport-https \
&& rm -f /etc/apt/sources.list.d/msprod.list \
&& rm -rf /var/lib/apt/lists/*
## should be set after locale was generated, overwise triggers warnings
ENV LANG="en_US.UTF-8" LANGUAGE="en_US.UTF-8" LC_ALL="en_US.UTF-8"
ENTRYPOINT ["sqlcmd"]
https://github.com/fabiang/docker-sqlcmd/blob/master/Dockerfile
推荐阅读
- reactjs - 更新的 useState 值未显示在另一个函数中
- ios - 使用 @binding 调用 API 后 Swift 更改状态并重新加载
- oracle - SQL Developer 只读测试模式
- mysql - 如何在 MariaDB 结构中为默认值定义变量?
- java - 如何在 Firebase 中添加 youtube 视频
- node.js - 更新用户配置文件后,刷新页面时用户退出
- django - django rest 框架请求与 self.request
- java - Wiremock - 如何连接到在 docker 上运行的 wiremock
- android - 在android中强制停止后重新启动服务
- maven - maven-assembly-plugin 运行多次,配置为只运行一次