Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f60487285325 hello-world "/hello" 2 seconds ago Exited (0) 2 seconds ago nostalgic_goldstine 8541933cccdc hello-world "/hello" 3 seconds ago Exited (0) 2 seconds ago sick_euclid 5200866fb18d hello-world "/hello" 4 seconds ago Exited (0) 4 seconds ago hopeful_mestorf eea5b2620e02 hello-world "/hello" 7 minutes ago Exited (0) 7 min
mysql を含むものをテストする際に例えば go だと、lestrrat/go-test-mysqld とかを使います。 perl には Test::Docker::MySQL っていうのがあって、面白いなと思ったので、(雰囲気 go-test-mysqld インターフェースで)go で書いてみました。 github.com go で mysql の立ち上げを docker に寄せると、go-sql-driver/mysql が pure go なので簡単にバージョンの固定が出来て良いです。 最近は、開発にも docker を使っているので、アプリケーションのコードも docker な事が多いです。そうなると、docker run ... go test となるので、そのコンテナの中から mysql コンテナをさらに立ち上げる必要があります。 とりあえずって事で コンテナに docker
いまお仕事の関係で、機械学習の教科書的な書籍を読んだりオンライン講座を受講したりしながらサンプルやチュートリアルを動かして勉強しています。 機械学習を勉強するときは、Pythonの環境を構築し、JupyterNotebookを使って、実際に手と頭を動かしながら行うのが効率的です。が、アルゴリズムの理論そのものの理解がすでにしんどい上、過学習対策のための正則化、汎化性能の評価、クロスバリデーション、不均衡データや少ないデータはどうすればいいか、などなどいちいち難しいことを数多く勉強しなければなりません。 その上、、、、機械学習での学習は、1度やれば終わり!ではなく、パラメータチューニングしたり、データを増やしたり加工したりしながら、繰り返しなんども行う必要があります。一見ビジネス寄り&アカデミックな雰囲気を醸し出していますが、実際のところは、非常に泥臭い作業のオンパレードです。 が、、、、、
SchemaSpyというDBのスキーマを解析してテーブルの一覧やER図を出力してくれるツールがあります。 このツールの公式Dockerイメージが公開されており、非常に使いやすいので紹介させて頂きます。 https://hub.docker.com/r/schemaspy/schemaspy/ コマンド docker run -v "$PWD/schema:/output" --net="host" schemaspy/schemaspy:snapshot \ -t <DB種類> -host <DBホスト名/IP>:<ポート> -db <DB名> -u <DBユーザー名> -p <DBパスワード> このコマンドを実行するとカレントディレクトリのschemaディレクトリに解析結果のHTMLが出力されます。 (コンテナは自動的に終了します) docker run のオプション -vオプションで指
Ansibleのroleを実際に使ってみてわかったことを共有します。さらに便利に活用するtips等ありましたら、ぜひコメントをお願いします。 Ansibleのroleは単にインクルードの単位 最初roleという名前を聞いたときは、webserverとかdbserverといった役割を設定するのだろうと予想しました。が、Rolesのドキュメントを読んで、playbookの一部をインクルードして再利用するための仕組みだということがわかりました。つまり、playbookを分割・構成するコンポーネントという意味合いです。 もともとroleはなくてincludeの仕組みだけありましたが、より便利にするためにroleという仕組みが追加されたという経緯のようです。 例えばnginx, mysqlといった単位でroleを定義するのが良いです。さらにmysql/clientのように階層的なrole名を用いるこ
ローカルPCに個人開発環境を建てたいけど、母艦は汚したくないものです。 そうすると、だいたいの場合vagrant(virtualbox)かdockerかの2択になると思います。 この使い分けにいつも迷うのでどうするべきかの指針を考えてみました。 お断り: 以下は個人の見解であって、所属先の見解ではありません。 カーネルに依存する操作を行いたい場合 dockerの場合、いじれるカーネルパラメータが限られています。 特定バージョンのカーネルの環境を用意する必要がある場合や、カーネルパラメータに特殊な設定が必要な環境では仮想マシンの方である必要があります。 内部で生成されたデータの保全を行いたい場合 dockerの場合、ふとした操作(docker killやdocker build、docker rm(i)など)でデータコンテナの中身が消えてしまうことがあります。 仮想マシンのイメージであれば、
追記 (2018.12.30) PHP5.6, PHP7.1 に加えて、PHP7.2, PHP7.3 にも対応しました! また、PHP から memcached につなぐサンプルを追加しました。 はじめに こんにちは。小西です。開発環境の構築って面倒ですよねー。 今回、PHP, MySQL, PHP-FPM, nginx, memcached のローカル開発環境を、Docker を使ってコマンド一発で作られるようにしたところ、あまりに簡単で驚いたので、その方法をご紹介します。 ソースコードをgithubにおいておきます ので、すぐに起動できます! 開発環境構築のめんどくささ 僕はPHP+MySQL+nginx+PHP-FPMの環境をよく使うのですが、こういった構成をそれぞれのマシンで再現するのって結構面倒なんですよね。1プロジェクトならまだいいですが、大体プロジェクトによってそれぞれのバー
追記 直近の Docker 界隈について Linux コンテナ 参考 Linux コンテナとは Linux コンテナを構成する主な機能 OS リソース毎の Namespace cgroup サブシステム こんなにざっくりでは、Linux コンテナは語れないと思うけど haconiwa haconiwa とは haconiwa で何が出来ると? haconiwa 導入 はじめての haconiwa (1) はじめての haconiwa (2) 〜 コンテナ作成 〜 はじめての haconiwa (3) 〜 コンテナ起動 〜 haconiwa で学ぶ Linux コンテナ .haco ファイル再掲 namespace を弄る前に namespace uts namespace pid 俺は Linux コンテナについてなんにも解っていなかった(まとめ) haconiwa は Linux コンテ
はじめて読む方へ 元の投稿は今より便利ではなかった頃に書いたものです。 今現在手軽に削除したい場合には、以下の2つが便利です。 コマンドで手軽に消したい場合 $ docker <Management Command> prune が便利です。 <Management Command> は、container, image, network, volumeなどです。 纏めて削除したい時には $ docker system prune を使うとよいでしょう。 $ docker system prune WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all dangling images - all dangling build cac
Dockerイメージのサイズを1バイトでも削りたい皆さんに朗報です。 もうすぐリリースされるDocker 17.05でmulti stage buildという機能が導入される予定です。 こいつはこれまでのDockerfileの常識を覆す革新的な機能なのです。 Docker 17.05は本稿執筆時点では2017/05/03リリース予定となっており、現在はRC版が出てるので、気になる新機能を一足早くで試してみた。(2017/05/07追記:最終的に2017/05/04に正式リリースされました) とりあえずこの新しいシンタックスのDockerfileを見てほしい。 FROM golang:alpine AS build-env ADD . /work WORKDIR /work RUN go build -o hello main.go FROM busybox COPY --from=buil
構築、運用工数、利用の便利さ、セキュリティ、コストなどのあらゆる面から総合的に考慮した結果、DockerRegistry on EC2に決めました。 1.1. システム構成: 構成図は以下のとおり: 特に難しいことはなく、一般的なELB-Autoscaling構成になります。ストレージはS3を利用します。 1.2. 構築手順とポイント S3にイメージ格納用のバケットを作成 ELBを作成: Health Checkはtcpの5000番ポート(registryコンテナの動作ポート) HTTPSの443ポートからHTTPの5000番ポートへトラフィックを転送 HTTPS証明書はAWSのCertificate Managerサービスを利用 (最初に構築時ACMはまだ東京リージョンに来ていませんでしたが、5月に東京リージョンでも利用可能になりました。便利なサービスなのでぜひ利用してみてください。)
Rocket.ChatはMeteorベースのマルチプラットフォーム・チャットアプリ Rocket.Chatは、ざっくりいうとオープンソースのSlackクローンアプリケーションである。ここでは、MeteorとRocket.Chatの話をしたいので、Slackの実装の話は控えるが、Rocket.ChatはMeteorベースのアプリケーションである。 Meteorはざっくりいうと、フロントエンドもサーバサイドもJavaScriptでできているフルスタックフレームワークだ。Web開発でいうフルスタックフレームだと、Ruby on Railsが有名であるが、RailsとMeteorとで異なる点としては、MeteorはWebアプリケーションのみが作れるというわけではないことだ。Meteorは、iOS、Androidのモバイルアプリの作成にも対応している。また、Meteorはリアクティブプログラミングが
本連載は、コンテナ仮想化技術を使ったアプリケーション実行環境構築プラットフォームである「Docker」をつかって、ソースコードのバージョン管理ツールやコミュニケーションツールなどの開発支援ツールの導入を行う手順をご紹介します。今回は、プロジェクト管理ツール「Redmine」と社内チャットツール「Let's Chat」の実行環境を構築する手順について解説します。 はじめに 前回は、Dockerを使って、アプリケーション開発の現場でよく利用されている、アプリケーション開発支援ツール「GitLab」と継続的インテグレーションツール「Jenkins」の実行環境を構築する手順を説明しました。 さらに、チーム開発を成功させるためには、進捗管理やメンバー間の円滑なコミュニケーションが重要になります。今回は、以下の開発支援ツールの実行環境を構築する手順について説明します。 プロジェクト管理ツール「Redm
Ansible徹底入門 クラウド時代の新しい構成管理の実現 作者: 廣川英寿,平初,橋本直哉,森田邦裕,渡辺一宏出版社/メーカー: 翔泳社発売日: 2017/02/17メディア: 単行本(ソフトカバー)この商品を含むブログを見る Ansible徹底入門読了。会社での購入稟議完了。Ansible依存の弊社としては会社として持つべき本。— k1LoW (@k1LoW) 2017年3月15日 「Ansible徹底入門 クラウド時代の新しい構成管理の実現」を読了しました。 わたしのAnsibleスペック とりあえず自分のスペックを。 1.5か1.6から使い始めています。 現在は1.9をメインに使っています。 ChefやPuppetはほとんど利用していません。 受託開発をやっているせいか、結構な数のPlaybookを書いてきました。 “今"のAnsibleを教えてくれる Ansible自体は知ってい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く