「みんなの翻訳」は、世界中の文書をみんなで協力して翻訳するサイトです。

みんなの翻訳ロゴ
ブクタブ
翻訳サイト

カテゴリ一覧

このサイトについて 新規登録はこちら お試し翻訳

一覧

2017/07/28

メンテナンス終了のお知らせ

2017/7/25-2017/7/28に実施したメンテナンスは、2017/7/28/14:20に終了いたしました。 ご協力をいただき、ありが…

List

kyo2018

English⇒Japanese

Hnoss

English⇒Japanese

yasukazu

English⇒Japanese

shikimi

English⇒Japanese

ホーム > 翻訳記事

翻訳記事

【GitLab 公式 を訳してみた】MySQLを使う

GitLab Documentation>GitLab Continuous Integration (GitLab CI)>CIサービス設定例>MySQL を使う 

  たくさんのアプリケーションが、データベースにMySQLを採用しています。もちろん、アプリケーションのテストを行う際にはデータベースも一緒にテストできる状態にしておかなくてはなりません。
 これから、MySQLをDockerで運用する方法と、GitLab Runnerのシェルエクゼキュータで運用する方法との、2種類をお教えします。

 

  DockerエクゼキュータからMySQLを使う

  もしもGitLab RunnerでDockerエクゼキュータを使っている場合は、基本的にこの設定は終了していることになっています。

  まず、「.gitlab-ci.yml」ファイルに次の設定を加えます。

======================
services:
 -mysql:latest
variables:
 # ここではmysqlを使っていく上で必要な環境変数を設定する。(https://hub.docker.com/r/_/mysql/)
 MYSQL_DATABASE: el_duderino
 MYSQL_ROOT_PASSWORD: mysql_strong_password
======================

  次に、アプリケーションのデータベースとして必要な設定をします。先ほどの設定した環境変数が登場します。
 以下は例示です。

======================
Host: mysql
User: root
Password: mysql_strong_password
Database: el_duderino
======================

  なぜここで「Host: mysql」としたのかについては、こちらの『Dockerイメージを使う』というページの『サービスをjobと連携させる方法』という節が参考になるかと思われます。

  ホストにするDockerイメージは、Docker Hubに公開されているものなら全て使用可能です。
 たとえば、Docker Hub上で公開されている「MySQL 5.5」というサービスなら、「mysql:5.5」として設定コンフィグに記載します。

  今回使用しているmysqlイメージでは、環境変数がいくつか用意されています。
 このような説明は、Docker Hub側の説明書に掲載されていることがほとんどですので、ぜひ入念にご確認ください。


 

  シェル・エクゼキュータからMySQLを使う

  これはあくまで手動で、GitLab Runnerに設定することとなりますが、MySQLをシェルエクゼキュータから利用する方法があります。

  まずは、MySQLサーバーをインストールします。

======================
sudo apt-get install -y mysql-server mysql-client libmysqlclient-dev
======================

  MySQLのルートパスワードを設定します(必須)。これは尋ねられる度に、2回打ち込まなくてはいけません。

 注:セキュリティの観点から、「mysql_secure_installation」が何者かによって削除された際には、データベースのテスト並びに、rootユーザーによるリモートログインが不可能になります。
 

  次に、 MySQLにログインできるユーザーを作成します。このユーザーがMySQLに対するroot権を保持していることになります。

======================
mysql -u root -p
======================

  その後に、アプリケーションを管理するランナーのユーザーを作成したら、
 以下のコマンドでなるべく強固なパスワード($passwordに相当)を設定します。

  注:mysql>」と先頭に書いてありますが、これはMySQLプロンプトに出現する目印ですので、ご自分ではタイプしないでください。

======================
mysql> CREATE USER 'runner'@'localhost' IDENTIFIED BY '$password';
======================

  データベースを作成するコマンド:

======================
mysql> CREATE DATABASE IF NOT EXISTS `el_duderino` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
======================

  データベースを運用する上で、使用に権利認証が必要なコマンド:

============================================
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER, LOCK TABLES ON `el_duderino`.* TO 'runner'@'localhost';
============================================

  用事が済んで、データベースのセッションを終了させるときのコマンド:

======================
mysql> \q
======================
 (¥はバックスラッシュの誤変換)

  最低限、データベースがまだ作り立てのときには、接続が確実に行われているかどうかをご確認ください。

======================
mysql -u runner -p -D el_duderino
======================

  最後に、データベースとして使うために、アプリケーション側の設定を行います。

======================
Host: localhost
User: runner
Password: $password
Database: el_duderino
======================

 

  例示プロジェクト

  もし、オープンソースプロジェクトの作成をお考えで、GitLab.comで作業する予定がある方は、こちらの Example MySQL Projectをお使いいただけます。ここで使用するランナーは共有ランナーです。

  この例示プロジェクトに対して何か思うところはありませんか?
 「これじゃ物足りない…」、「もうちょっとこの機能が欲しい」とか。

 それだったら、ぜひともこのプロジェクトをフォークして、変更をかけてコミット&プッシュしていただけると嬉しいです。変更は、しばらくすると共有ランナーに検知され、jobが開始されます。

  Edit this page

 

 

 
PDF
更新日:2018-03-23 21:37:03 Hnoss 0  del.icio.usに追加   はてなブックマークに追加   twitterに投稿   facebookでshare
[ 原文 ] https://docs.gitlab.com/ee/ci/services/mysql.html 原文ページプロジェクト並びにドキュメントファイルは、MIT Licenseのもと公開されています。(URL:https://gitlab.com/gitlab-com/gitlab-docs/blob/master/LICENSE) この記事の文章は、訳者の判断によりCreative Commons BY (version 3.0) を適用するものとします。
翻訳者ページをみる

この記事の翻訳者

Hnoss さんの翻訳記事

[翻訳]GitLabハンドブック>法的文書に署名する

現在の位置: チームハンドブック 目次 >法的文書に署名する  法的文書への署名は、他社・他組織などに直接出向いてNDAsを取り扱った人物を除いては、Cレベル エクゼクティブのみが…2018-04-07 23:31:41

[翻訳]GitLabハンドブック

現在の位置:チームハンドブック 目次  このハンドブックは、GitLabという企業が、どのようにサービスを維持運営していくかを記したものだ。ここに書かれていることが、わが社の中核レ…2018-04-07 23:18:22

【GitLab Pages 公式 を訳してみた】GitLab Pages 説明書 

  新しいドキュメント はこちらです。このドキュメントは旧式です。 GitLab Documentation > User documentation > Projects >GitLab Pages 説明書 …2018-04-06 16:52:11

【GitLab 公式 を訳してみた】GitLab Pages 説明書(改訂版)

GitLab Documentation > User documentation > Projects >GitLab Pages 説明書  GitLab Pagesなら、無料でウェブサイトをホスティングできる。  GitLabにプロジェクトレポジト…2018-04-06 16:50:36