JavaScript

es6では、Array.fromで、配列の数分ループを回せるので 回したい回数分の配列を作成して、Array.fromに渡します。 コールバックでは使用する文字列からランダムに 一文字を抽出する処理をループさせ、 出来上がった配列をjoinすれば ランダムな文字列が完成します。 let digit = 12; // 生成したい文字数 let alArray = ‘abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789’; // ...

Docker,仮想化

Ruby on Rails 5.1からは、Rubyだけではなく、webpackerとか使う場合にはnpm環境も必要となる。 毎回自前でDockerfileでnpm環境をインストールするのも時間がかかるので、その辺をひとまとめにしたDockerイメージを作りました。 使い方は Rails5.1のプロジェクトに Dockerfileを以下のように作成 # 本体 # # VERSION 0.0.1 FROM gendosu/ruby-for-rails-51:2.3 MAINTAINER Gen Ta ...

Docker

herokuのコマンドラインツールをDockerイメージにしてみました。 理由は、色々なherokuのアカウント(プライベートだったり仕事用だったり)を切り替えるのがめんどくさいので、各環境ごとにDockerのコンテナ内にログイン情報を持たせようと思ってやってみました。 hub.docker.comにアップしてあるので docker run --rm -v `pwd`:/app gendosu/heroku-cli heroku apps でという感じで実行出来る。

コラム,つぶやき

エンジニアの世界では よく、○○の技術を持っている、経験しているから大丈夫だろう、と言う想定の上で採用活動をする。 だけど、技術を持っている、と言うのは、現在進行形ではない場合もあり、その場合は作業者としては使えるけど、開発チームのリーディングには向かない可能性が高い。 何を言いたいかと言うと、技術の鮮度の問題で 例えば、Rubyであれば、Rubyの最新バージョンが現在2.4で、Railsが5です、と言う時にRuby経験あり。Ruby1.8、Rails2やってました。といった人が来てもある程度は ...

コラム,つぶやき

エンジニアの世界での野良猫と飼い猫の話 どちらが幸せなのか?と言うのは人によってそれぞれだとは思うのだけど、 と言う断り書きをしつつ、ちょっとエンジニアを猫という生き物にたとえてみる。 野良猫(フリーランス・ベンチャー・起業・独立系) エンジニアの世界だと野良猫はフリーランスや、ベンチャーに勤める、いわゆる大企業ではないところで働くエンジニアだと思っている。 ポイントは 自由(リモートOK) 挑戦が出来る(言語選定・技術選定etc) うまく立ち回ればすごく贅沢が出来る 当然、リスクは多い 車に轢 ...

Docker,GoLang

gooseというgoで書かれたDBマイグレーションツールがあり、これだけを含んだDockerイメージを作った。 hub.docker.comにアップしてあるので run --rm -v `pwd`:/go gendosu/goose goose create example でという感じで実行出来る。

heroku

Thumbnail of post image 152

Overview herokuにデプロイしたサービスをSSL化するのに、Let’s Encryptを使いたいけど なかなか面倒に感じてしまうところがあると思います。 そこで、herokuにデプロイするアプリにはLet’s Encryptのチャレンジレスポンス用のエンドポイントだけを作り そのエンドポイントに環境変数でキーを渡すようにすれば、ある程度外部から自動化出来るのではないかと思い試してみました。 環境はRuby on Railsです。 今回使うツール certbot certbot-her ...

Docker

先日、Docker for macでDocker.qcow2というファイルが肥大化する件というのを書かせていただきましたが、こちらの件、Docker for macの最新版ベータにて、ある程度自動で解消されるような処理がマージされたようです。 New Data Management commands #26108 Docker for mac のベータチャンネルにも降ってきましたので、試してみました。 今回ベータチャンネルで降ってきた内容は多いのですが、その中でReclaim disk size ...

Docker,Mac

Thumbnail of post image 130

docker便利ですね。 最近そんなことばかりしか言ってない気がします。 自分がdockerを使い始めた頃は、dockerってなんなのかわからない人が多く 話すと便利そうだけどプロダクションで使う想像がつかないとか 環境がめんど臭いとか 色々言われていました。 今現在は、開発環境として使うのであれば docker for macというのがあって、これ入れるだけでかなり簡単にdockerが試せるようになりました。 環境を作るのが簡単になったのであれば、使えるdockerfileとかdocker-c ...

Docker

Docker for macのベータ版でですが、Docker for macのVMの仮想ディスクの場所を変えられるようになるようです。

Docker

Thumbnail of post image 057

Docker便利ですね。 Docker for macが出てからは、もうmac上には環境を作らない なんて運用も可能じゃないかというくらいです。 実際、サーバサイド系の環境はほぼ全てDockerで運用してます。 gulpとかでブラウザのオートリロードとかしたい場合は さすがに難しいので、そこはmac上に環境を作っておりますが。 ということで、ハードにDocker for macを使っていくと ディスク容量が日々減っていくのが実感出来るかと思います。 これは、Docker for macも実体はV ...

Windows

Thumbnail of post image 059

VAIO Zの5年くらい前?機種は DYNAMIC HYBRID GRAPHICS SYSTEM という仕組みで、バッテリーを長持ちにさせる代わりにグラフィックをIntelのチップセットのもを使うようにしたり、ハイパフォーマンスにしてNVIDIAを使うようにしたり、という設定がスイッチで付います。 ※Windows 10にアップした後に撮ったので、LEDが点灯してないですが、本当はスイッチの向いてる方向のLEDが点灯します。 これのおかげでモバイル用途もOKでゲームも楽しめるという贅沢な機種でし ...

Linux

ある日、委託の方にサーバへのアクセス権を付与するためにSSHのキーをくださいと言ったら 以下のようなフォーマットで送られてきた。 ---- BEGIN SSH2 PUBLIC KEY ---- Comment: aaa keykeykye ---- END SSH2 PUBLIC KEY ---- SECSH形式?という解らない形式のものらしい。 と思ってよくよく調べたら 本来のSSHキーはこのような形式のようだ。 (本当か??) 今までOpenSSHに慣れすぎて来たという事なのかな。 というの ...

git,開発

よくチュートリアルのなどで git clone git checkout なんて感じでcloneして使うやり方を書いてあったりするけども 普通にgit cloneすると 他のブランチの情報とかも管理ディレクトリに持ってきている状態なので ディスク容量も食うし、cloneする時間もかかる。 そこで、特にgit的な操作は以後しないのであればgit shallow cloneするのが良い。 やり方は git clone —depth 1 —branch こうすると、ブランチの最新のリビジョンだけを持っ ...

つぶやき,気になる物

Thumbnail of post image 186
今年は暑くてたまらないですね。 そして、スマホライフも熱との戦いとなりそうです。 ゲームをするとさらに熱くなること間違いなしですね。 機種によっては熱によってすぐに機能停止になったりするのもあるようです。 また、ゲームなど割と長時間プレイする場合はバッテリーがもたずに充電しながらのプレイになるときも多々あるかと思います。 自分もそうです。 そして、充電しながらだと、非常に熱くなって持っているのもしんどくなるので、 スマホの両端をつまむようにして持ちながらプレイしてたりします。 そんなスタイルがち ...

heroku,Ruby,Ruby on Rails 4,インフラ

Thumbnail of post image 163
最近、herokuで稼働させているRailsのアプリが「Memory Quota Exceeded」と言われる事が多くなり、定期的にワーカーの再起動をしたいと思ってました。 見る限り、swapも出てしまい、レスポンスも遅くなっているようです。 このような場合、heroku以外だと、unicornを使うので、unicorn_worker_killerを入れるのですが herokuだとpuma推薦なのでpuma使っていました。 で、pumaもuniconのようにworker killer系の物がある ...

未分類

ベンチャー・中小企業における開発チームの維持と言うことで、またいくつかキーワードを挙げてみます。 経営の視点から考えたとき、開発チームとして維持したい事は 収益性のある機能について継続的に改修、機能追加が出来る事。 将来に備えてスケール出来る仕組みを常に考えられるようにする。 経営判断での急な対応も出来る。 といったあたりがとくに重要となる。 開発チーム視点から考えたときは、上記に加え メンバーのモチベーション維持。 技術的負債の解消。 新技術・新バージョンへの探求心。 技術共有。 あたりが重要 ...

Docker,Mac,仮想化

Thumbnail of post image 018

Docker for Mac bataがリリースされ、早速インストールしてみました。 アプリケーションディレクトリに入れて、このアイコンをダブルクリックするだけで Dockerの環境が自動的に構築されるようです。 メニューバーにはDockerのアイコンが表示されるようになります。 1.11以前にDocker ToolboxでDockerを使っていた場合、この初回の起動時に 既存環境を新しい環境で使えるように変換が行われます。(yesにした場合) 今回は、全く新しい環境にインストールをしているので ...

PC関連,コラム

Thumbnail of post image 026
Evernoteが値上げ&無料のベーシック版にさらに制限がつくようだ。 ここで、今一度、自分なりにEvernoteとOneNoteの無料版の比較をしてみたいと思う。 1ノートごとの保存容量 Evernote OneNote 1ノートごとの保存容量 1記事25MB 無制限 全体の保存容量 なし? OneDriveにファイル作成のため、OneDriveに依存 アップロード容量制限 60 MBの月間アップロード容量 無制限 ウェブクリップ機能 各ブラウザにプラグインを追加して使用 ページ全体・選択範囲 ...

Windows,仮想化

Thumbnail of post image 154
lxrunというコマンドがコマンドプロンプトでたたけるようになっているようで、これでオプションにuninstallを付ければ Bash on Ubuntu on Windows のサブシステム一式が削除出来るようだ。 試しに消してみた。   C:\Users\gen> lxrun /? LX サブシステムの管理操作を実行します 使用法: /install - サブシステムをインストールします オプションの引数: /y - ユーザーに許可を求めません /uninstall - サブ ...