Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up
ChromebookにJupyterとDockerComposeを入れて、軽い開発環境として使ってみよう!PythonDockerChromebookJupyterJupyterNotebook 前書き Chromebookは、ブラウザのみ、ネット利用前提のマシン、 と思われがちであるが、 実は簡単なLinuxマシンとして使うことも出来る。 ブラウジングやメール、Officeなど(本来のChromeBook機能) Androidタブレットとして(GooglePlayのアプリが使える) Linuxのミニ・開発環境として といった3つの使い方が出来て、 非常に軽く、早く。安く、電池も持つ端末として、 サブ機として超オススメと言える。 本稿では、Linuxのミニ・開発環境として、 Chromebookの基本的な使い方(開発向け)から始まり、 ①ローカルJupyterNotebookとしてのPyt
WSLにdockerをインストール この記事ではDocker for Windowsをインストールし、Hyper-V上で Dockerが起動することを前提としています。 WSL2の場合は、上記のインストールがいらないそうですが、 まだ、Insider Previewでしか使用できないようなので、 Docker for Windowsのインストールを前提とし、 expose deamon on~~のチェックを入れてDockerが起動していることを前提にしています。 dockerをWSLにインストールする方法は https://docs.docker.com/install/linux/docker-ce/ubuntu/ に記載している為、省略します。 だいたいこのあたりは他の方もブログがQittaに記載しているので、 すぐにインストールができると思います。 問題はVolumeの設定 まず最初
はじめに M1 Macを使い始めたことをきっかけに、コンテナベースのWeb開発に移行しました。 各実行環境をコンテナに隔離しつつ、エディタや各種GUIクライアントとの連携において、ローカルと同等の開発体験を得るために行ったことと、途中でハマったことを書いていこうと思います。 環境 M1 Mac Monterey 12.3 Docker Desktop 4.6.1 Visual Studio Code 1.66.1 Remote - Containers 0.231.5(本記事ではこちらの設定は割愛します。) 前提と要件 今回対象にしたのは、下記のような構成の既存のWebサービスです。 開発体験という観点で下記を要件として設定します。 要件①:コンテナA-webのHTMLレスポンスに含まれる、コンテナB-webのiframeをホストのブラウザで表示できること。 要件②:ホストからコンテナA-
背景 docker-composeを使い、phpfpmコンテナとmysqlコンテナを作り、phpfpmの方からpdoでmysqlにアクセスする処理を書いたのですが、dsnやuser、passが合っているはずなのに何度やってもConnectionRefusedになってしまいました。 色々調べたり試したりしていった結果dsnで指定していたホストが間違っていたことが分かりました。個人的にとても勉強になったのでエラーを解消した手順や結果等をまとめます。 結論 ・ホストPC(Mac)⇄コンテナ間通信で使われるIPとコンテナ同士の通信で使われるIPは異なる ・今回のようにphpfpmコンテナ⇄mysqlコンテナの通信の場合は、docker-compose psで表示されるホストではなく、コンテナの環境変数で確認出来るホストを使う <追記> ・Twitterで教えて頂いたのですが、Docker-comp
すでに走ってるWordpress、ローカルに再現したくない?? ※dockerインストールについては割愛させていただきます。 ディレクトリ構造 コンテナ作成前 データの準備 wp-contentの取得 テーマファイルなどが入ったwp-contentフォルダをftpサーバなどを介して取得しておく。 sqlダンプファイルの取得 サーバーから直接エクスポートもしくは、BackWPupとういプラグインで簡単にデータをバックアップし取得することができる。 zip形式で取得し、そのままdb-dataディレクトリ下に設置する。 BackWPupの使い方について参考サイト: BackWPUpで確実にWordPressのバックアップを取る方法 docker-compose.ymlを作成 version: '3.3' services: mysql: build: context: ./docker/mysq
DockerComposeを使って起動したDockerコンテナのログは、docker-compose logs SERVICE_NAMEで確認できる。 しかし、このログはコンテナを削除しない限りずっと残ってしまう。 ログが溜まれば、ディスクを圧迫してしまうことにもなるし、何万行もあるログを確認することになると、最新のログが表示されるまで何十秒もかかってしまう。 ログの設定を行い、快適なDockerライフを送りましょう。 DockerComposeでのログの設定 公式ドキュメント 私が開発環境で行っているログ設定はこちら。 services: app: logging: driver: json-file options: max-file: '1' max-size: 3m ログを最新の3MBだけ記録しています。 設定について driver driver: json-file ここでは、ロ
Dockerを使用してアプリケーションをコンテナー化する方法と、DockerComposeを使用して開発環境でアプリケーションを実行する方法PythonAPIDockerkubernetes はじめに Dockerは、最も人気のあるコンテナ化テクノロジーの1つです。使いやすく、開発者にとって使いやすいツールであり、他の同様のテクノロジーよりもスムーズで簡単に使用できるという利点があります。 2013年3月の最初のオープンソースリリース以来、Dockerは開発者や運用エンジニアから注目を集めています。 Docker Inc.によると、DockerユーザーはDocker Hubに1050億を超えるコンテナーをダウンロードし、580万のコンテナーをドッキングしました。このプロジェクトには、Githubに32Kを超えるスターが集まっています。 それ以来、Dockerが主流になり、10万を超えるサー
はじめに くーばねてすをやっつけるために新たなステージに上がるためについにdockerさんに会いに行くことにした。dockerさんと仲良くなることでコンテナシステムの仕組みの理解とくーばねてすを倒すための調査をする。今回はデータベースを使用したブログサーバーをdockerでまとめて構築してみる。まとめて構築するのにはdockerComposeを使用して構築する。 概要 ■複数のコンテナを連動して一つ一つ構築する ■dockerComposeでまとめてコンテナを起動する ■コンテナを一括で停止および削除する をまとめた!(>_<) ■複数のコンテナを連動して一つ一つ構築する ブログサーバーを構築するのに、 ①dockerネットワークの作成 ②データベースコンテナの永続化ボリュームの作成 ③Mysqlコンテナの作成 ④WordPressコンテナの作成 をつくる。ここでは一つずつセットアップして
初めに Docker を用いた開発環境が主流になってきているが、起動順序を意識されていないことが多くまれに起動に失敗する。起動順序の制御方法を Docker Compose の公式ドキュメントと Compose Specification と実装を参照し、起動順序による起動の失敗が起きない環境の設定方法をまとめる。 公式ドキュメントを読む まずは公式ドキュメントの(Control startup and shutdown order in Compose)を参照する。 ドキュメントには下記のように記載があり depends_on オプションのことが記載されている。 You can control the order of service startup and shutdown with the depends_on option. Compose always starts and st
タイトル通り。 WSL2導入、設定。 Windows Terminal導入、設定。 Docker、DockerCompose導入。windows->WSL2へのポートフォワーディング設定 (その他)Dockerのユーザ定義ネットワークの謎の名前解決不具合対処。 WSL2導入 やった事がこちらの記事にほぼ載ってたので割愛。 完全新規に導入する場合は、WSL2の設定後に、CMDかPowerShellから、wsl --set-default-version 2を実行後に、Microsoft Storeからインストールする。 WSL2設定 メモリ上限設定、localhostでの通信許可設定 デフォルトだと、WSL2が無限にメモリを食い尽くそうとしてきた。 あと、WindowsからWSL2環境にアクセスするときにlocalhostを使いたい。 C:\Users\<yourUserName>\.wsl
釣り臭いタイトルですね。 内容は結構他の人とかぶってるんですが、公式通りするとハマる部分があったので書いておく。 ※これは開発環境とかの用途で使って下さい、本番でやるんだったらGKEとかの方がいいです。 ※GCPは使える、課金設定は済んでる前提です。 GCPのGCEでDockerを動かす理由 これはずばりDockerに特化したOSが既に入っており、それを使うと楽だからです。 今回はSwaggerをみんなが見れるところで起動したかったので何か一番いいやつを探したら GCP+docker-composeでした。 GCEマシンを立ち上げる ふつーにWebGUIからGCEを立ち上げます。 開発用であんまりパワーいらないのでマシンタイプはmicroで十分。 ここでOSに「Container-Optimized OS 69-10895.172.0 stable」を選択します。 起動したらgcloudコ
# apt -y install jq Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: grub-pc-bin linux-headers-4.15.0-99 Use 'apt autoremove' to remove them. The following additional packages will be installed: libjq1 libonig4 The following NEW packages will be installed: jq libjq1 libonig4 0 up
Kongとは Microsoftの設計パターンではゲートウェイ集約という形で公開されているメソッドです。 ゲートウェイを使用して、複数の個々の要求を 1 つの要求に集約します。 このパターンは、クライアントが操作を実行するために、さまざまなバックエンド システムに複数の呼び出しを行う必要がある場合に便利です。 一般的にマイクロサービスアーキテクチャでサービスを作ってしまうと、アプリケーションとサーバー間の接続が複数生まれます。そうすると、接続情報の管理や、エラーハンドリングが煩雑になってきます。そこで、間にリバースプロキシ的なものを挟んで、アプリケーションからは1つに見えるようにすることが考えられます。これがゲートウェイ集約です。 今回は、Kongというものを使いましたが、SentinelやGlooなんかも有名です。 使用するイメージ kong https://hub.docker.com
この投稿は、弊社が提供するWESEEK TECH通信の一環です。 WESEEK TECH通信とは、WESEEKのエンジニアがキャッチアップした技術に関する情報を、techブログを通じて定期的に発信していくものです。 はじめに はじめまして、私は都内でシステムエンジニアとして働いており、主に Ruby, JavaScript を用いた Web アプリケーションの開発を行っています。 私の職場では 1~2 年くらい前からだんだんと Docker を使う機会が増え、最近ではほぼ全てのプロジェクトで Docker を使用して開発を行うようになりました。 それほどまでに Docker という技術は便利なものとなっており、今後も長い間使われると思っています。 そんなわけで今回から2回に渡って DockerCompose, Dockerfile の説明と Docker での Rails の開発環境構築に
はじめに こんにちは。すっかり夏になりました。ponponnsanです。 さて、今日はなんとなく雰囲気で触っていたdocker composeについて理解を深めようと思いました。 参考にした書籍は以下です。とてもわかりやすくておすすめです。さすがAmazonベストセラー。 Docker Composeとは dockerのコマンドをいちいち全部書くのは面倒ですよね。 Docker Composeは構築に関わるコマンド分の内容を一つのyamlファイルに書きこんで、一気に実行したり、停止・破棄することができるものです。 Dockerfile との違い Docker Compose: 「docker run」 の集合体。コンテナに加えてネットワークやボリュームなども作成できる。 Dockerfile: イメージを作成するもの。ネットワークやボリュームなどは作成できない。 *ボリューム...ストレー
<注意> この記事は、「取り急ぎDockerでMySQL環境を使ってみたい」という初学者向けの内容となっております。 ネット上にDockerComposeを使ってやる方法はたくさん転がっていますが、DockerComposeを使わず、Dockerfileでこれを行う方法があまりなかったので今回記事にしました!(まあMySQLを含むデータベースは他のサービスと連動してナンボなので、そもそも単体で使うことは学習段階以外ではほぼないと思いますが。) 「だったら最初からCompose使えば良くない?」 と思われるかも知れませんが、私のように 「Composeいまいち理解してないんだよなぁ。理解しないまま使いたくないし、だけど取り急ぎDockerでMySQLの学習を行いたい。」 という人が世の中に一人でもいると信じて!この記事を書きます。 「いやいや、データベースは他のサービスと連動させるのが当たり
こんばんは、エンジニアの眠れない夜です。 DockerComposeでCommandを複数個実行したけどどうやって書けばいいの?? ということで調べてみました。 1行で書きたいときは command: bash -c "python manage.py migrate && python manage.py runserver 0.0.0.0:8000" 1行ずつ行を分けて書きたいときは command: > bash -c "python manage.py migrate && python manage.py runserver 0.0.0.0:8000" と、こんな感じで書きます。 コマンドを複数行で実行する時のポイント bash -c "コマンド1&& コマンド2" と書くことです。””で囲ってそれをbash -cで実行するということですね。 command: >
DockerComposeでnginxとspring-bootを同時に建てて、 nginxをリバプロとして利用しようとしたら、400BadRequestを食らってしまったので備忘も兼ねてメモ。 原因 nginxからspring-bootに流す際にホスト名としてコンテナ名を利用していたため。 DockerComposeでコンテナを起動すると、 {プロジェクト名}_{サービス名}_{連番}という法則でコンテナ名が付き、 同一DockerComposeで立てられたコンテナ同士はこのコンテナ名をホストとしてお互いに通信できます。 が、このホスト名でSpringBootにSpringBootに対してリクエストを投げると、 以下のエラーが出て400が帰ってしまいます。 java.lang.IllegalArgumentException: The character [_] is never vali
version: "3.7" services: postgres: image: postgres:13 container_name: postgres ports: - "5432:5432" volumes: - ./db/postgres/init.d:/docker-entrypoint-initdb.d - db-data:/var/lib/postgresql/data environment: POSTGRES_USER: root # DB USER POSTGRES_PASSWORD: root # DB Password POSTGRES_INITDB_ARGS: "--encoding=UTF-8" hostname: postgres user: root restart: always pgadmin4: image: dpage/pgadmin4:5 con
概要 Dockerコンテナ間で通信をしたい場合のDockerComposeの書き方です。 DB用のコンテナとWeb用のコンテナを分けて使う場合に使ってます。 今回、DBはPostgreSQLを使いますが、基本的にどのDBも同じはずです。 実行環境 Centos 7.6 version: '3.7' services: myapp-db: image: postgresql11:1.0.2 container_name: myapp-db privileged: true command: /sbin/init networks: - mynet myapp-server: image: server-image:1.0 container_name: myapp-server privileged: true command: /sbin/init depends_on: - myapp-
目次 はじめに プロジェクトの作成 Entity Framework Coreを使って事前準備 Docker Composeの設定 動作確認 終わり はじめに 最近、Visual Studioで .Net 5 を使った開発に携わることがあり、Dockerを使ってデバッグをしておりました。 その時にDBが必要で、出来ればDBも Docker を使いたいと思い調べていたところ、Visual Studioの機能でデバッグ用に Docker でDBも使えることが分かったのでそちらを記事にしようと思います。 環境は以下で行います。(インストール手順は省きます) 環境 Windows10 Visual Studio 2019 Enterprise Docker 4.4.4 .Net 5 プロジェクトの作成 まずテスト用のプロジェクトを作成します。 今回はAsp.Net Core MVCで作ります。 プ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く