mysql - 如何在官方 swift-ubuntu 图像上使用带有 tools-utils.sh 的 SwiftMySQLKuery?

标签 mysql macos ubuntu kitura

我正在尝试使用以下命令在官方 swift-ubuntu(最新的 5.0.1)镜像上使用 mysql 运行我的 kitura (2.7) 应用程序的发布版本。

docker build --no-cache -t my-app-build -f Dockerfile-tools .
docker run -v $PWD:/swift-project -w /swift-project my-app-build /swift-utils/tools-utils.sh build release

第一个命令按预期工作。第二个是发出警告:

警告:您可以使用系统打包程序安装 mysqlclient:apt-get install libmysqlclient-dev

尝试安装库但没有任何改变...

有人可以帮助我吗?

提前致谢!

最佳答案

该问题似乎与 Ubuntu 版本和安装的 MySQL 的最终级别有关。由于在安装 MySQL 时基础容器运行的是 Ubuntu 14.04,因此您获得的是 5.5 版,它没有提供 pkg-config 所需的配置来查找构建应用程序所需的包含路径。

我已经能够获得一个简单的 Kitura 应用程序,它使用 SwiftKueryMySQL 在 docker 下构建,通过更新我的 Dockerfile-tools 文件进行两个更改:

1) 将 FROM 更新为:

FROM swift:5.0.1

2) 添加一些需要的包:

# Install system level packages
RUN apt-get update && apt-get install -y sudo libcurl4-openssl-dev openssl libssl-dev pkg-config libmysqlclient-dev

通过这些更新,您的构建应该会成功。我将研究该问题的长期解决方案。

关于mysql - 如何在官方 swift-ubuntu 图像上使用带有 tools-utils.sh 的 SwiftMySQLKuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56018620/

相关文章:

c++ - 在 mac 上将我最初安装 Cmake 的位置更改为 usr/local/bin

objective-c - NSBezierPath:创建一个 "curved"正方形

android - Android Studio 2.0 QObject:无法从OSX上的另一个线程停止计时器

angular - 无法访问在 ubuntu 服务器上的端口上运行的项目

php - 如何在PHP5.5上安装V8js?

ubuntu - 下载特定的ubuntu包文件

php - 使用 Ajax 插入 mysql 数据库的问题

python - uWSGI和Nginx中MySQL连接出现502错误

php - Laravel DB::select() 不返回 "correct"数据

mysql - 将数据从 MySQL 二进制日志流式传输到 Kinesis