福岡拠点の宮里です。
Dockerを勉強し始めました!
DockerでLaravel開発環境を構築する場合に便利なLaradockというパッケージがあり、併せて勉強中です。
Laradockとは
PHP開発環境を構築できるDockerイメージのパッケージです。
DockerでLaravelプロジェクトを実行することに焦点を当てて開発されています。
Laravel以外にもSymfony、CodeIgniter、WordPress、Drupalなどの他のPHPプロジェクトもサポートしています。
officialのDockerイメージをベースに拡張したパッケージなので信頼性があるとのことです。
Laradockが魅力的なのは、なんといってもその豊富なソフトウェア群です。
build→upで必要なライブラリを都度追加・更新が行えます。
備忘録としてそのパッケージをリストアップしました。(2018年11月時点)
サポートしているソフトウェア(一部)
Portainer
Docker管理WebGUIツール
公式サイト: https://portainer.io/
Docker Registry
Dockerプライベートレジストリサーバ
Dockerドキュメント: https://docs.docker.com/registry/
Docker Web UI
DockerプライベートレジストリWebUI管理ツール
Github: https://github.com/kwk/docker-registry-frontend
MySQL
データベースサーバ
公式サイト: https://www.mysql.com/jp/
MariaDB
MySQL派生のオープンソースデータベースサーバ。
公式サイト: https://mariadb.org/
phpMyAdmin
MySQLサーバー管理ツール
公式サイト: https://www.phpmyadmin.net/
PostgreSQL
オープンソースデータベースサーバ。
公式サイト: https://www.postgresql.org/
pgAdmin
PostgreSQLサーバー管理ツール
公式サイト: https://www.pgadmin.org/
Microsoft SQL Server
データベースサーバ
公式サイト: https://www.microsoft.com/en-us/sql-server/sql-server-2017
Redis
オープンソースのメモリ内データ構造ストアで、データベース、キャッシュ、メッセージブローカーとして使用。NoSQLデータベースサーバ。
公式サイト: https://redis.io/
Aerospike
KVS。フラッシュ(SSD)に最適化したNoSQLデータベースサーバ。
公式サイト: https://www.aerospike.com/
Minio
Go言語製Amazon S3クラウドストレージサービスと互換性を持ったオブジェクトストレージサーバ。
公式サイト: https://docs.minio.io/
Apache2
世界中でもっとも多く使われているWebサーバ
公式サイト: https://httpd.apache.org/
Nginx
Webサーバ
公式サイト: https://nginx.org/en/
Caddy
Go言語で実装されたwebサーバ
公式サイト: https://caddyserver.com/
Varnish
HTTPアクセラレータ
公式サイト: https://varnish-cache.org/
Certbot
Let’s Encryptのクライアント
公式サイト: https://certbot.eff.org/
Laravel Echo Server
LaravelのSocket.IOサーバライブラリ
Laravel公式ドキュメント: https://laravel.com/docs/5.7/broadcasting
GitHub: https://github.com/tlaverdure/laravel-echo-server
Swoole
PHPネットワークフレームワーク。
公式サイト: https://www.swoole.co.uk/
Solr
オープンソースの全文検索エンジン
公式サイト: http://lucene.apache.org/solr/
Elasticsearch
Lucene基盤の分散処理マルチテナント対応オープンソースの検索エンジン。分散型RESTful検索/分析エンジン。
公式サイト: https://www.elastic.co/jp/products/elasticsearch
Kibana
Elasticsearch用ビジュアライズ/データ可視化ツール
公式サイト: https://www.elastic.co/jp/products/kibana
Grafana
データ可視化ツール。
対応ツール:Graphite、Prometheus、Elasticsearch、InfluxDB、OpenTSDB、MySQL、AWS Cloudwatch
公式サイト: https://grafana.com/
Metabase
オープンソースのデータ可視化ツール
対応:MySQL, Postgres, Mongo, SQL Server, AWS Redshift, Google BigQuery, Druid, H2, SQLite, Oracle, Crate, Google Analytics, Vertica
公式サイト: https://www.metabase.com/
NetData
サーバのリアルタイムパフォーマンスと健全性モニタリングツール
Github: https://github.com/netdata/netdata
Thumbor
画像のクロッピング、リサイズ、フィルタリング等の画像変換サーバー
公式サイト: http://thumbor.org/
Beanstalkd
オープンソースのメッセージキューイング。Laravelがサポート。
公式サイト: https://beanstalkd.github.io/
Beanstalk Console
PHP製Beanstalkd管理ツール
Github: https://github.com/ptrofimov/beanstalk_console
RabbitMQ
メッセージキューイング
公式サイト: https://www.rabbitmq.com/
HHVM
PHP実行環境
公式サイト: https://hhvm.com/
PHP-FPM
PHP FastCGI実装
公式サイト: https://php-fpm.org/
PHPドキュメント: http://php.net/manual/ja/install.fpm.php
JupyterHub
Jupyter Notebook用のマルチユーザーサーバ
公式サイト: https://jupyterhub.readthedocs.io/en/stable/
ICEcoder
PHP製のWebブラウザIDE。
公式サイト: https://icecoder.net/
Coding WebIDE
クラウドベースのWebIDE
公式サイト: https://ide.coding.net/
Codiad
PHP製のWebブラウザIDE。
公式サイト: http://codiad.com/
Theia
クラウド版Visual Studio Code
公式サイト: https://www.theia-ide.org/
Mailu
DockerベースのWebUI付きメールサーバ
公式サイト: https://mailu.io/
MailDev
Eメールテストツール。
SMTP Server + Web Interface for viewing and testing emails during development.
Github: https://github.com/djfarrelly/MailDev
MailHog
Go言語製Eメールテストツール。
Web and API based SMTP testing
Github: https://github.com/mailhog/MailHog
Selenium
ブラウザ自動化ツール
公式サイト: https://www.seleniumhq.org/
Blackfire
PHPプロファイリングツール。パフォーマンステストツール。結果をWebUIで確認できる。
公式サイト: https://blackfire.io/
Jenkins
Java製オープンソース継続的インテグレーションツール
公式サイト: https://jenkins.io/
GitLab
Gitリポジトリ管理
公式サイト: https://about.gitlab.com/
積極的に活用していきたいですね。