Corredor

ウェブ、プログラミングの勉強メモ。

2020-11-28 : このブログは2020年末をもって更新停止する予定です。
2021年以降は Neo's World (https://neos21.net/) で記事を公開していきますので、今後はコチラをご覧ください。
このブログの記事は2021年以降、Neo's World に順次移行していきます。元記事および本ブログは移行次第削除する予定です。

Docker

セルフホスティングの IFTTT 代替。n8n.io を使ってみた

IFTTT が実質有料化してしまったので、代替ツールを探していた。前々から自分のサーバにホスティングする IFTTT っぽいツールに興味があったので、今日はその一つである n8n.io というモノを試してみる。 n8n.io - Free and Open Workflow Automation Tool …

Docker コンテナの出力を jq にパイプしたらインデントが崩れるのを直す

docker run や docker exec を使って、AWS CLI 的な CLI ツールを動かす。実行結果は JSON 形式で返ってくるので、コレをパイプして jq で整形しようと思った。 # 「get status」的なサブコマンドを実行しているイメージ $ docker run --rm -it my-cli-conta…

Docker の詳細 History が分かる Dive を使ってみる

Docker イメージの内容を調べるのに、docker history というコマンドを紹介した。Dockerfile をリバースできるようなツールだが、ファイルの細かな増減や変化は分からない。 そこで今回紹介する Dive というツールを使ってみる。 GitHub - wagoodman/dive: A…

Docker と Kubernetes でコンテナログを Tail で見る

Docker コンテナや Kubernetes Pod の標準出力ログを見るには、次のように見れば良い。 $ docker logs -f --tail=10 【コンテナ名】 $ kubectl logs -f --tail=10 【Pod 名】 -f オプションがない場合は、最古のログから最新のログまでを表示したら終わり -f…

Ubuntu 18.04 に Docker をインストールする

以前 CentOS に Docker をインストールしたが、今回は Ubuntu 18.04 にインストールする。 neos21.hatenablog.com 以下の公式サイトのガイドをそのままやっていく。 Install Docker Engine on Ubuntu | Docker Documentation $ sudo apt-get update $ sudo a…

GitHub Actions Workflow をローカルで実行できる act を試してみた

最近 GitHub Actions をよく書いているが、ローカルでテストできないので、都度都度 Push しては動作確認していた。 よくよく調べてみると、act というツールが Workflow ファイルをローカル実行してくれるようなので、使ってみた。 GitHub - nektos/act: Ru…

WSL2 をもっと使っていくための構成を考える

WSL をもっと使い込んでいきたく、環境を考えたりする。 コレまでの自分の開発環境 Windows Terminal と Remote WSL で気持ちが変わってきた ホスト環境にインストールするモノ ホスト環境にインストールしなくて良いモノ Windows Terminal の設定 VSCode の…

Ctrl + D でターミナルを閉じないようにする

通常の「ターミナル」で作業している時とか、docker exec でシェルに入っている時とかに Ctrl + D を押下すると、シェルからログアウトされてしまう。 Ctrl + D は EOF (End of File)、ファイルの終わりを示す特殊文字で、標準入力の終了を示すことから、シ…

Docker イメージを基にどんな Dockerfile が書かれていたか復元する

ある Docker イメージを見た時に、どのような Dockerfile によってそのイメージが生まれたのかを調べる方法。 $ docker history --no-trunc 【IMAGE NAME】:【TAG】 # 例えば以下のように $ docker history --no-trunc node:14-alpine $ docker history --no…

Docker コンテナに注入する環境変数、どれが優先される?適用のされ方を実際に調べてみた

最終的に Kubernetes 上で動かすつもりのアプリを作っていると、環境変数を注入してアプリに使用させることが多々ある。 Node.js 製のアプリでは、dotenv という npm パッケージで .env ファイルを読み込んだりできるので、開発環境ではコレを使って環境変数…

nginx のリバースプロキシを Docker-Compose で試してみる

nginx のリバースプロキシ機能を使って、複数の Node.js サーバへの通信を、単一ドメインで受けてみたい。 リバースプロキシとは リバースプロキシで何ができるの? Docker-Compose で開発環境を作る デモプロジェクトとコード全量 プロジェクト構成 nginx …

VSCode + Docker 開発。Remote Containers 拡張機能を使ってみた

VSCode のワークスペースに対応する開発用の Docker コンテナを簡単に立ち上げられる拡張機能があるので試してみた。 VSCode Remote Development Extension Pack Remote Containers を使うと何が良いのか 実際に使ってみる ホストにポートフォワードする 今…

任意の文言を否定形に変換する「ねむいガチャ」を作った

ruby-jp という Slack ワークスペースに、#ねむい というチャンネルがある。 Slack Create Account | Slack ココで「ねむいガチャ」と投稿すると、Slack Bot が「ねむい」か「ねむくない」かをランダムに答えてくれるのだ。 コレに着想を得て、「任意の文言 …

AWS EC2 からしか接続できない RDS Aurora MySQL に外部から接続してみる

最近 AWS を触り始めた。 Amazon RDS で MySQL 互換の Aurora を構築してあって、この Aurora に接続できるのは踏み台となる EC2 インスタンスのみ、という構成の環境を作った。 つまり、 EC2 インスタンスに SSH 接続する EC2 インスタンスにインストールし…

Docker で Ubuntu 18.04 を動かしたら日本語入力ができなかったので対処

Ubuntu 18.04 LTS 日本語 Remix 使い方が全部わかる本【電子書籍】ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天Kobo電子書籍ストア価格: 1,628円 以前、Docker で動かした CentOS で、日本語表示の文字化けを直す方法を紹介した…

docker-compose を使った Node.js・npm 開発環境構築例

Dockerによるアプリケーション開発環境構築ガイド【電子書籍】[ 櫻井 洋一郎 ]ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天Kobo電子書籍ストア価格: 4,180円 docker-compose を使って、Node.js・npm の開発環境を構築してみる。…

CentOS Linux に Docker をインストールしてみた

プログラマのためのDocker教科書 第2版 インフラの基礎知識&コードによる環境構築の自動化作者:WINGSプロジェクト阿佐 志保出版社/メーカー: 翔泳社発売日: 2018/04/11メディア: Kindle版 コレまで MacOS Mojave neos21.hatenablog.com Windows10 Home (Dock…

Ansible を Docker コンテナに対して適用するためのお試し環境を作った

初めてのAnsible作者: Lorin Hochstein,Sky株式会社玉川竜司出版社/メーカー: オライリージャパン発売日: 2016/04/16メディア: 大型本この商品を含むブログ (2件) を見る 初めてのAnsible [ ローリン・ホッホスタイン ]ジャンル: 本・雑誌・コミック > PC・…

Python + Selenium + ChromeDriver 環境を Docker Compose でまとめてみた

プログラマのためのDocker教科書 第2版 インフラの基礎知識&コードによる環境構築の自動化作者:WINGSプロジェクト 阿佐 志保出版社/メーカー: 翔泳社発売日: 2018/04/11メディア: 単行本(ソフトカバー) プログラマのためのDocker教科書 第2版 インフラの基…

「sudo su」を理解する

Linux で root ユーザに切り替えて作業を始める時に打つ $ sudo su - というコマンド。コレが何を意味しているのか、改めて理解しようとしてみる。 まず、root ユーザは、全ての特権を持つ「神」ユーザ。自分で Linux OS を新規インストールしたりしない限り…

WPScan を使ってみる

WordPress で作ったサイトの脆弱性をチェックできる、WPScan というツールを試してみた。 Docker 環境があると、面倒なインストール作業をすっ飛ばして実行できるので、Docker を使うのが良いだろう。 $ docker run -it --rm wpscanteam/wpscan --url 'http:…

Docker CentOS 7 内で日本語を使えるようにする

Docker で起動した CentOS 7 環境で ls したら、日本語が文字化けしていたので解消法を調べた。 参考:Dockerfileで日本語ロケールを設定する方法。およびロケールエラーの回避方法。 - Qiita 取り急ぎ以下を叩けば文字化けが直る。 localedef -f UTF-8 -i j…

Windows10 Home に Docker Toolbox を使って Docker をインストールするまでの戦いの記録

Windows10 Home は Hyper-V が使えないため、通常の Docker for Windows はインストールできない。Docker for Windows が対応しているのは Windows10 Pro なのだ。 そんな残念な Windows10 Home のために用意されているのが、VirtualBox を組み合わせて Dock…

Docker イメージの脆弱性検査ができる「Trivy」を使ってみた

Docker イメージの脆弱性診断ができる、Trivy というツールがリリースされていたのでお試し。 CIで使えるコンテナの脆弱性スキャナ - Qiita 日本人が作成されたそうで、上の Qiita は作者本人による詳細な使い方が記載されている。GitHub リポジトリは以下。…

Wercker を使ってみた感想

Oracle Container Pipelines として取り込まれた CI・CD ツールである Wercker を使ってみたので紹介。 wercker 参考:Oracle Blogs 日本語のまとめ: [Cloud] New in Developer Cloud - Fn Support and Wercker Integration Wercker ってどんなもの?僕が感…

Windows GitBash で Python・Node.js・Docker が上手く動かない場合は winpty を設定する

Windows GitBash にて、$ python や $ node コマンドを叩いて、プロンプト上で簡単なコードを動かしてみたかったのだが、どうもプロンプトの応答が戻ってこない。 また、$ docker 関連のコマンドを使うと、以下のようなエラーメッセージが返ってきた。 $ doc…

Docker で Alpine Linux と apk (パッケージ管理ツール) を使ってみる

Alpine Linux という、Docker コンテナ向けの超軽量な Linux ディストリビューションを使ってみる。内部的には BusyBox を使って軽量化を実現している模様。 Alpine Linux - Wikipedia Docker を使って、Alpine Linux の最新版のイメージを落としてみる。 $ …

Kubernetes で Pod が再起動しまくった原因は、コンテナのプロセスが終了したから

Kubernetes で動かすコンテナを作ってデプロイしたところ、Docker コンテナとして単体で動かしていた時は上手く動いていたのに、Kubernetes Pod としては正常に起動しない問題に遭遇した。 $ kubectl get pod で Pod のステータスを見ると、CrashLoopBackOff…

起動中の Docker コンテナにファイルを転送する / コンテナからファイルをダウンロードする

ポケットモンスター アップロード / ダウンロード (何) Docker コンテナ起動時に -v オプションを指定すれば、ホスト OS との共有ディレクトリを設定することはできる。 今回はそうではなく、既に起動されている Docker コンテナにホスト OS からファイルを…

OCI CLI・OKE・OCIR 利用時に異なるアカウントを切り替えるには

OCI (Oracle Cloud Infrastructure) 環境の参照・操作に使う OCI CLI (oci コマンド)。 なかなかいないかもしれないが、複数のテナンシーを管理していて、OCI CLI で複数の環境を操作したいという人向けに、設定ファイルの切り替え方を考えたのでご紹介。 OC…