ダーク/ライト切り替え

【Docker】Alpine Linux版Pythonにmysqlclientをインストールするとき

投稿日2023-01-28

Picture of the logo


目次

目次を読み込み中...

# mysqlclientとは

PythonでMySQLを使用するためには、MySQLのクライアントライブラリであるmysqlclientをインストールする必要があります。

mysqlclientをインストールするには、通常pipを使用して、次のコマンドを実行します。


            

# そのままインストールしようとするとエラーが出る

が、エラーが大量に出ます。

理由はいくつかの依存関係があるライブラリが足りてないからです。それらをmysqlclientより先にインストールする事でエラーを回避して、無事インストールすることができます。

# インストール方法

必要なのは

gcc python3-dev libc-dev mariadb-dev

の4つ。

以下にDockerfileの簡単な記述例を紹介します。

pipのアップグレードは必須ではありませんが、いちいちwarningが出るので。結論として、

apk add gcc python3-dev libc-dev mariadb-dev

をpipより先に実行する事でエラーなくインストールできました。

# 接続テスト

これで、PythonからMySQLサーバに接続できるようになります。

最後に、MySQLサーバに接続するために必要な設定情報(ホスト名、ユーザ名、パスワード、データベース名など)をPythonコード内で指定する必要があります。

例えば、次のように設定情報を指定してMySQLサーバに接続することができます。

上記のように設定を行うことで、Alpine Linux上でMySQLを使用することができるようになります。






関連記事

備忘録】Docker-Compose上に動いているデータベースの定期バックアップ【初心者】

blog

タイトルのとおり、Docker-Compose上に動いているMysql(またはMariadb)のバックアップを取る手順について備忘録も兼ねて書き残しておきます。

tor-privoxyをdockerで運用してみた備忘録

blog

TorとPrivoxyを使ってプライバシーを保護した通信を行うため、`tor-privoxy`コンテナをDockerで運用する方法を紹介します。設定ファイルのテンプレートや具体的な利用方法について記録しています。

docker-composeで簡易リバプロ環境構築【備忘録】

blog

docker-composeを使って手軽にnginx、リバースプロキシを構築する手順を書き残しました。個人的備忘録

【Rust】Tonicでgrpcの接続テストをするまで【初学者】

blog

VscodeでrustのDev Containerを作り、Tonicを使ったgrpcサーバとクライアントを作り、接続テストをしてみる。接続の結果、お馴染みのHello worldが表示される。

【VPN】OpenVPNサーバーを立ち上げて自分専用VPNを作る

blog

このブログ記事では、クラウド上のUbuntu LinuxホストにDocker Composeを使ってOpenVPNサーバーを構築し、自分専用のVPN環境を作る方法を紹介します。コンテナ技術を用いることで、ホストOSへの影響を最小限に抑えながら、簡単にVPNサーバーを立ち上げることができます。

【Python】最強のパスワードの作り方わかったw【超初心者向け】

blog

pythonの標準モジュールでUUIDというモジュールを使うと簡単に強度な乱数を生成できます。32桁の16進数とそれを4つの-(ハイフン)で区切られた合計36文字の文字列をランダムで生成します。これだけで2^128とおりのパターンがあるので一意の固有の識別番号と言っても過言ではないでしょう。今回はそれを2つ並べます。

複数のNext.jsプロジェクトを別々のdockerコンテナで構築し、nginxリバースプロキシ

blog

同一ドメインのサブディレクトリにNext.js ウェブアプリをそれぞれ独立したdockerコンテナで起動し、更にNGINXで振り分けるまでに詰まった事を備忘録も兼ねて書き残しておきます。

【備忘録】2023年版Djangoのstatic保存先をAWS S3にする

blog

Djangoの静的ファイルをS3に保存する手順。2023年1月にAWSに仕様変更が入り、追加の手続きが必要になったので、個人的備忘録を兼ねて書き残しておきます。

Dockerを使ってNGINX→WordPressを構築する備忘録

blog

この記事では、Dockerを使用してNGINXとWordPressを組み合わせた環境を構築する方法を紹介します。NGINX→WordPressの構成を採用することで、パフォーマンスの向上とセキュリティの強化を実現します。

Djangoフレームワークで国別アクセス制限を実装する方法

blog

サーバーを運用していると、特定の国からのアクセスを制限したいと思うことはありませんか?例えば、セキュリティの理由や、ビジネスの対象地域を限定したい場合などです。Djangoを使っている場合、簡単に特定の国からのアクセスを制限できる方法があります。この記事では、Djangoで国別アクセス制限を実装する方法を紹介します。


スポンサーリンク

このサイトをシェアする