サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
CES 2025
qiita.com/sawanoboly
Chef Infra Client(※)のバージョン15くらいから、ライセンス同意を促されてますよね。(※他との区別のためchef-clientについた名前) +---------------------------------------------+ Chef License Acceptance ... ライセンスApache2ちゃうの、と思うでしょうがそれはソースコードのお話とのこと。 Chef Software社がビルドした実行ファイル(※)とそれを含むrpm,debの利用に対してはこちらのChef Licenseに同意してね、と。 ※ 実行ファイルだけ別のRubyGemになってたりする => https://github.com/chef/chef/tree/master/chef-bin CINC Project で、あのライセンス同意をしなくてよいバージョンをコミュニティビ
なにかしらアプリケーションを開発しており、公式のDockerイメージを配布する。最近よく見かけますね。 利用者側の意見として、アプリケーションの設定には環境変数が使えると助かったりします。 なんで? ADD/COPYがいらない 変更のたびビルドしなくていい Mountつかわなくていい Mount用のファイルを管理しなくていい docker-compose.ymlなどで完結 で、この環境変数からアプリケーションの設定というやり方、一部界隈のDockerイメージで命名規則が次のように、 {アプリケーション名}_{ディレクティブ}_{サブディレクティブ} {アプリケーション名}_{設定項目名} という感じの環境変数をUppercaseでアプリケーションに渡せば、設定ファイルの同じ項目を指定・または上書きするというルールがあります。 別にどんなイメージでもこうすればよいという主張ではなく、なんかし
この記事はMobingi Advent Calendar 2018の24日目の記事(遅刻)です。 動機・背景など AWSのVPCで任意のタスクを実行したい => タスクの定義はバージョン管理したい、定義変更時のみ実行したい => CPUリソースの利用はタスク実行時のみにしたい のようなとき、選択肢が結構限られるなあと思いました。 そんな中で使えるひとつ、AWS Fargateで同期っぽくカジュアルにタスクを実行できるツール ecs-task-runner というのがありまして。 pottava/ecs-task-runner: A synchronous task runner for AWS Fargate on Amazon ECS ※ ecs-task-runner は同名の別物もあるので注意 ちょっと使ってみましょう。 pottava/ecs-task-runner のインストール
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 理由は様々ですが、アクセス元のIPアドレスを固定したいことがあります。 基本的にどこかに所属してオフィスで仕事、であればあまり気にしなくてよいのですが、それ以外の場所でも固定IPを利用する場合ではちょっとした環境のセットアップが必要です。 オフィスまたは自宅に固定IP、VPNで一旦そこを経由 適当なIaaSクラウドサービスでVPSや固定IPを取得して踏み台作成 さて、固定IPアドレス、たいていは色々とケチっても1,000円弱くらいかかります。 それに加えて、拠点に用意する場合はレンタル機材やらVPNエンドポイントのメンテナンス、物理的引
ドメインそのものを表す Zone Apex (Naked DomainとかRoot Domainとかも) は色々あって基本的にはAレコードでの運用です。 最近はNameServerとWebサイト(公開URL)を預けるプロバイダが同一ならば対応しやすくはなっていますが、次のようなケースでは悩みどころです。 ゾーンは自分の管理下 Webサイトはホスト名を払い出すタイプ(CNAME推奨)のどこかのサービスを利用 この組み合わせでZone apexを利用できるNameServerプロバイダを並べてみます。 ほか、ここでもできるよーという情報があれば追記するのでコメントしてもらえると嬉しいです。 国内 新鋭のサービス中心、って感じですね。 Dozens(ダズンズ) DNSレコード設定の手順 - Dozens ヘルプセンター ALIASレコード を参照 Gehirn DNS ALIAS(エイリアス)レ
とりあえずやってみたくなるやつ。 今回使用したDockerイメージのソース、タスク用のJSONなどはこちら。 https://github.com/sawanoboly/amazonlinux-sshd 一回ログインしたらセッション切断時にタスクも終了する(sshdが-dで起動している)ようにしています。 ログインしてみる ssh root@52.90.198.xxx で。環境変数ROOT_PWをrun-taskで指定していなければパスワードroooootで。 一応amazonlinuxをベースにしており、ログインしたときの環境変数はこんな感じ。 (※ 元の環境変数からAWS_*のみ自動でexportするように指定済。) $ ssh root@34.236.216.xxx root@34.236.216.xxx's password: There was 1 failed login at
func TestWillingToIssueWildcard(t *testing.T) { bannedDomains := []string{ `zombo.gov.us`, } pa := paImpl(t) bannedBytes, err := json.Marshal(blacklistJSON{ Blacklist: bannedDomains, }) test.AssertNotError(t, err, "Couldn't serialize banned list") f, _ := ioutil.TempFile("", "test-wildcard-banlist.txt") defer os.Remove(f.Name()) err = ioutil.WriteFile(f.Name(), bannedBytes, 0640) test.AssertNotErr
ただ、レスポンスを動的に組み立てるだけの話です。 botではない、単発のSlackのスラッシュコマンド(Slash Commands) 一応簡単に説明しておきます。スラッシュコマンドとは、/foo [text]のように、Slackのチャンネルで頭にスラッシュをつけて入力することでなにかしら処理をしてもらうためのシンタックスです。 Slash Commands | Slack さてこれ、一見Slack Applicationか、botフレームワークの知識が入りそうですが、プリセットのAppSlash Commandsを使えば次のようなゆるゆる仕様で取り扱うことができます。 plain/textでレスポンスが来たら、Bodyをそのままチャンネルに投稿する。 application/jsonでレスポンスをしたら、Bodyをパースして規定の形式でチャンネルに投稿する。 HTTP 200 以外のレス
先日こんな記事を見かけて、 Kubernetesの学習のためにMastodonを構築したら勉強になった | ハラミTech Web, Worker, Websocketと要素が揃っているMastodonのスタックをXXで動かしてみる、というのは感触をつかむのによいなと思いました。 で、じゃあAWS Fargateではどうかなと、このようにしてみました。 事前準備 Dockerコンテナ以外で、マネージドサービスで揃えられるものは優先的にそちらを使用します。 AWSで用意 VPS (既存でも新規でも) RDS (Postgresで起動) ACMで証明書 (ALBに適用する) ALB TargetGroup-web (HTTP/3000) TargetGroup-stream (HTTP/4000) S3バケット (PAPERCLIP Wikiのポリシー適用が楽) Redis => Redis
{ "version": "0", "id": "7266ead5-3f9e-aee4-6abd-7908713f9a16", "detail-type": "Batch Job State Change", "source": "aws.batch", "account": "************", "time": "2017-10-27T04:28:14Z", "region": "us-west-2", "resources": [ "arn:aws:batch:us-west-2:************:job/fddb88dd-33f0-478b-933e-27799c94d1b0" ], "detail": { "jobName": "streamtest", "jobId": "fddb88dd-33f0-478b-933e-27799c94d1b0", "jobQu
Docker for AWS(以下D4a)はGAの際、永続化ストレージをサポートするCloudstorというプラグインを添付するようになりました。 D4aの17.06.0-ceでどのように使うのか試して見たので使用感など。 Cloudstorがサポートするストレージのタイプ EBSにデバイスを作成してマウント k8sでのPersistent Volumesのような感じ。 複数コンテナからの同時利用ははなし。 EFSで任意のディレクトリをマウント 対象のEFSはテンプレートパラメータで自動作成。 dockerdが環境変数EFS_ID_REGULAR, EFS_ID_MAXIOで対象を決めるので、一応既存のEFSも使えなくはない。 複数コンテナからの同時利用OK。 つかってみる ドキュメントではswarmモード(service)での使い方しか出ていませんが、単発のdocker runでも普通に
現行のACMEv1を使ったLet's Encryptのお話。 (https://letsencrypt.org) V1は終わりましたが、V2でも概ね同じです。一応V2はひとつ制限が追加されてます、追記の3を参照。 個人が手持ちのドメインで利用するにはあまり気にすることもないですが、何度も証明書を発行しようとすると制限に引っかかってくることがあります。 https://letsencrypt.org/docs/rate-limits/ 先日Encryptを少し多めにLet'sした機会があったので、その時に色々気を使ったことをまとめておきます。 Let's Encryptにかかる制限(rate-limits) といっても、(ドメインの所有さえ確認できれば)ACMEの仕様としてかかる制限はありません。 ほとんどはACMEのプロバイダによる、証明書の発行やそれにまつわるリクエストへの量的な制限とな
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Mastodonを見ていたら、SINGLE_USER_MODEという設定項目があった。 トップページはアカウントID=1のストリームに固定(リダイレクト)される /aboutからサインアップできない。(入力はできるけど、トップに戻り何も起きない) Adminの管理はできる 公開インスタンスリストにも3つばかりSingleな奴がいますし、作ってもいいんじゃないかと。 List-of-Mastodon-instances SINGLE_USER_MODEをセットアップする まずは普通に立ち上げよう。準備。 cp .env.production.sample .env.production vim .env.production rake secretを埋めたり。 手元でやってみる場合、LOCAL_DOMAINはとりあえずlocalhost:3000を入れとくとよいです。 Rails的な色々をし
Docekr for AWS/Azure のベース、Moby Linuxを素の状態で起動してSSHログインする。Dockerd4x Docker for AWS(以下D4a)はDocker社が用意したAMIを含む、Swarmクラスタを作るためのCloudFormationテンプレートです。 ここで使われるAMIはAlpineがベースのMoby Linuxというやつで、D4aのテンプレートを無改造で使用すると、インスタンスへのSSHログインは専用のDockerコンテナに入ります。 この方式では、ホスト(manager/worker)に適用しておきたいカスタマイズがあるケースでは、テンプレートに直接試すのが少々面倒でした。 ちょっと試したい追加設定があるたびに、CloudFormationのテンプレートを改造していてはラチがあかないので、あたりをつけるまでは直接触って影響などみたいなーという時
Docker for AWSで docker-volume-netshare によるAmazon EFSマウントを可能にするDockerAmazonEFSd4x "mkdir -p /var/lib/docker-volumes/netshare/efs\n", "mount --bind /var/lib/docker-volumes/netshare/efs /var/lib/docker-volumes/netshare/efs\n", "mount --make-shared /var/lib/docker-volumes/netshare/efs\n", "docker run --restart=always -d ", "--name=netshare-efs-for-d4aws ", "--privileged ", "-v /var/run/docker/plugins:
Docker for AWS(Azure)はMoby Linuxと名付けられたbusyboxベースのOSに... まあ詳しくはこれを見てくれ。 Docker for AWS 試してみた その1 - Qiita 以下、DockerForなんとかは D4xと呼称します。イメージの名前とかがそうなってるし。 Docker APIへの標準的なアクセスについて。 さて、D4xの操作はドキュメントによるとマネージャノードの専用コンテナにSSHでログインするか、トンネルを貼るという案内だ。 参考: Deploying Apps on AWS/Azure D4xはベータ申込者(AWSならアカウントID)に対してDocker社からShareされたAMIをCloudFormation(以下CFn)で起動する。 この特性上、テンプレートを操作してしまえばいかようにでもカスタマイズは可能のように思えるけど、そもそ
この夏、あるシステムでSTNSを使えそうな気がしました。 STNSとは何か、ですって? なら落ち着いて、時代が求めたSTNSと僕 // Speaker Deck を読みましょう。 OK、読みましたかね。 で、ユーザのDBにSaaSの何かを使えればいいなとおもってバックエンドを書けるかなという試み。時代とはつまり私だった。 この記事で出てくるコードを置きました。 https://github.com/sawanoboly/stns_backend-sinatra-example STNSのバックエンド仕様を調べました 注: こちら、記事作成時点のSTNS APIバージョン1.0の仕様についての調査です。※バックエンドの指定にv2をつけなければそのまま使えます。 API v2.1(またはそれ以降)については http://stns.jp/en/interface STNS製作者のP山さん曰く、
Docker Swarm と Amazon Elastic File System (Amazon EFS) 。ついでにELB。elbDockerAmazonEFS Amazon Elastic File System (以下EFS)はざっくりいうとマネージドのNFSだ。 このEFSとDocker Swarmの新機能(1.12〜)、ingressとELBを組み合わせてみよう。 なんかユルいクラスタがつくれます。 記事を書いてる時点では、Dockerの1.12はrc4が出たとこですね。 事前に必要なもの。 Amazon EFSボリューム インスタンスからマウント可能なSGの設定 Docker-MachineからEC2インスタンスを作成する。 EFSと同じVPCに作ってね。EFSがあるリージョンでよろしく。2個作るか。 $ docker-machine create --driver amaz
ecs-agentの1.9.0以降では、DockerのLogDriverにawslogsを指定できます。 で、ECSを直接使う分にはlogConfigurationで指定すればよいのですが、ElasticBeanstalkから利用できるECS(に限らずですが)環境はいつもちょっと古く、この記事時点の最新でも1.8.2です。 待ってりゃ1.9.0にはなるんでしょうが。。ひとまず強引にやってみました。 段取りとebextensions awslogsを使えるように設定しつつ、ecs-agentを更新する段取り。ひとまずこれでうまく動いたのでよしとします。 ECS_AVAILABLE_LOGGING_DRIVERS設定を追加し、オプションの値にawslogsを許可する すでにあれば何もしない amazon-ecs-agentのv1.9.0をpullし、無理やりlatestタグを付与する ※ 別に
先人たちが色々踏んでおり、h2oとRailsの組み合わせでの問題は特に無くなっているような気がしたので使ってみた。 h2oはただのproxy.reverseでも色々よしなするようで、設定はとても少なくて済む。 ファイルがあったら〜な処理も並べるだけで、次へ次へと進んでいく。ほかはセキュリティ要件などに応じて、それ系のヘッダをつけておく位でよいかな。 access-log: /dev/stdout user: nobody hosts: "*": listen: 80 listen: port: 443 ssl: certificate-file: certs/server.crt key-file: certs/server.key paths: "/": mruby.handler-file: limit_access.rb file.dir: /srv/app/public proxy
AWS KMSを経由した暗号をRuby/Railsからしれっと使いたいので、Gemでも作るかと思ったらkms-envというのがあった。 これがなかなか利用シーンを想定した工夫がなされていたので紹介。 準備: 末尾に_KMSをつけた環境変数をセットする たとえばMY_TEXT1という環境変数に目的の文字列を入れたい場合、MY_TEXT1_KMSという環境変数にCiphertextを入れておく。 export MY_TEXT1_KMS="CiCIvMyU68+VaZSTfI3932heQDZdvp+5+HrByuWVyEcTRRKZAQEBAgB4iLzMlOvPlWmUk3yN/d9oXkA2Xb6fufh6wcrllchHE0UAAABwMG4GCSqGSIb3DQEHBqBhMF8CAQAwWgYJKoZIhvcNAQcBMB4GCWCGSAFlAwQBLjARBAxbSecwaBUfY
最近、Amazon ECSのコンソールに ECS now supports Docker 1.9 ... って出ます。 Dockerは1.9でlog-driverにAWSのCloudWatch Logsを指定できるようになった。 ただECSは1.7系だったので、しばらく次のようなプロバイダ逆転現象で使っていたんです。 さくらのクラウド(等)においてあるDocker-Machine: Dockerのlog-driverでawslogs指定。 => CloudWatch Logsとの連携楽ちん Amazon ECSで動かしているサービス: syslog経由でlogsコンテナからawslogsへ。 => 連携がなんかめんどっちい ベースAMIのDocker1.9への更新で、専用のlogsコンテナもういらなくなったはずだと思うので少し調べることにした。 ECSで使われるAMIからインスタンスを作成
h2oをbusyboxのコンテナに突っ込んだら軽そう - Qiita の続編。 前回、名前解決の関係で一部機能が使えてなかったところを改善したのでその記録。 また、nss関連を取り込めたので、busyboxのベースをbusybox:ubuntuからbusyboxに変更しても問題なくなった。イメージサイズも7MB => 5MBに。 1.6.0でのTLSでperl, opensslコマンドが必要だったので、alpineに乗り換えました。 https://hub.docker.com/r/higanworks/h2o-alpine 見た目のサイズは18MB ? perl, opensslパッケージの大きさと少々違う気がしますが... ↓↓↓ glibcのdebカスタマイズ、ならば--enable-static-nssだ make h2o 時に出ていた警告。getaddrinfoなどはこのglib
HTTPサーバのh2oを単品のバイナリにしてbusyboxのコンテナで動くかなという実験。 結果、普通のファイル配信はいけそう。 1.5.4(と現時点のmasterである1.6.0Bata)でリバースプロキシにホスト名を使ううと名前解決でSegFauiltしたので、一部機能が怪しくはある。 作ったイメージはDockerhubに置いた。 https://hub.docker.com/r/higanworks/h2o-busybox/ h2o-busyboxの準備 手元がOSXなので、ビルドもDockerでいいや。 h2oを強引に単品バイナリとするため、StackOverflowさんから軽く調べた範囲でCMakeLists.txtにてオプションを追加する。 綺麗ではないがまずはお試し。 ... RUN echo 'SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")' >
Auditing and Compliance with Chef 先日Chef IncがVulcanoSecっちゅーところを買収し、Chef Complianceをリリースしました。うん触ってみよう。 Chef Compliance ざっとこんなツールです。 OSのパッチ状況検出 (Linux/Windows) テストスイートInSpecのリモート実行 リモート系はSSHまたはWinRMを経由、エージェント不要 レポート作成 WebUIとAPI スケジュール 適当に作成したUbuntu14にプリセットの監査をかけると、SSH越しで色々と調べてレポートを作ってくれました。 なるほどねー。OSの自前管理を含むシステムを運用する場合の監査タスクに良さそう。 インストール&セットアップ RPMまたはDEBがこちらで配布されています(0.9.1)。 注: ノードの数についてChef Incに質問し
次のページ
このページを最初にブックマークしてみませんか?
『qiita.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く