ブログドリブンで生活に刺激を与える
ただの雑記です。ちゃんとしたブログ風に写真入れてみました。
フリーランスになって半年くらい経ちました。 フリーランスになった頃の記事達。
振り返りの振り返り
人が恋しくなる
これは加速してます。最近家の模様替えをして快適になり、コワーキングスペースに行く回数も減りつつあるので、本当に人と会わないです。
リモート楽
これも加速してます。旅行に行って、旅館で仕事したりしてます。 そういえばブログに書いてない。
休日がそんなにうれしくない
GWは10連休らしいですね。タイに旅行に行って仕事する予定です。
複数案件について
これもその通り。
Rails仕事で使う様になったので受けられる案件の幅は広がってるはずですが、深さはお察し。Laravelも書いてますが、やっぱりPHPが落ち着きます。
何とかなりますが、ある程度の共通の技術スタックで案件を選ばないと、頭の切り替えが無駄コストになる感があります。技術キャッチアップも追いつかないし。
パラメータの振り分けについて
これもその通り。 相変わらずインフラとサーバとクライアントやってます。CI周りの整備とか、一部タスク管理とかも。
ブログドリブンとは
勝手に命名したのですが、毎日ブログを書けるように、ネタを作りながら生活する事です。
終わってないとつい仕事しちゃうんだけど、重要だけど緊急じゃない事を後回しにしてしまいがちで、コントロール難しい。
— ダイスケ@フリーランスのエンジニア (@moyashidaisuke) March 25, 2019
家からもあまり出ないと他の人と話す機会も少ないし。
というわけで飲みに行きましょう。(飲まなくても良い)
思えばギター弾きまくってた時もバンドやらセッションやりまくってた時だし、外部要因が無いとエンジンかからないのが身に染み付いちゃってるんだろうな。
— ダイスケ@フリーランスのエンジニア (@moyashidaisuke) March 25, 2019
意識しないと引き込もりでずっと黒い画面とにらめっこになってしまうので、新しい事を始めたり、勉強会に顔を出したりして、毎日を少しだけチャレンジングにします。
特にメッセージ性があるようなブログでも無いので、生存報告だと思っていただければ。(とは言え、昔より文章力は上がった気がする)
あ、はてなのスター押したり、コメントくれたり、いいねくれると嬉しいので無限に押していいですよ。ではでは。
AWS CodeBuild を高速化するためのTips
ビルド職人の朝は早い、、、
というわけで、前回に続きでCodeBuildのノウハウです。
CodeBuildに限った話じゃないものもありますし、Docker使う場合だけの話もあります。ちゃんと計測したわけではないので、軽く試してみて良かったら使うくらいのノリでお願いします。
CodeBuildのキャッシュをうまく使う
Dockerのキャッシュをうまく使う
オフィシャルのドキュメントに色々書いてあるのですが、一例を、、
↑に関連してですが、例えば、以下のようなDockerFileがあったとします。
FROM nginx:alpine # ソースコードをコンテナにコピー COPY app /var/www # 設定ファイルをコピー COPY docker/nginx/nginx.conf /etc/nginx/ # 色々インストール RUN apk update \ && apk upgrade \ && apk add --no-cache openssl \ && apk add --no-cache bash \ && adduser -D -H -u 1000 -s /bin/bash www-data ADD ./docker/nginx/startup.sh /opt/startup.sh RUN sed -i 's/\r//g' /opt/startup.sh CMD ["/bin/bash", "/opt/startup.sh"] EXPOSE 80 443
Dockerのcacheは上から順番にしていって、差分が発生せいた時点で以降はすべてcacheが無効になります。この場合だと、 COPY app /var/www
がほとんどの場合前回と差分があるはずなので(ファイルのchecksumで差分扱いにしてくれる)、以降はcacheが効かなくなります。
なので、こんな感じで差分が発生しなさそうな処理をできるだけ最初の方に(逆に言うと差分が発生しそうな処理はできるだけ後の方に)やるとcacheが効きやすくなります。
FROM nginx:alpine # 設定ファイルをコピー COPY docker/nginx/nginx.conf /etc/nginx/ # 色々インストール RUN apk update \ && apk upgrade \ && apk add --no-cache openssl \ && apk add --no-cache bash \ && adduser -D -H -u 1000 -s /bin/bash www-data # ソースコードをコンテナにコピー COPY app /var/www ADD ./docker/nginx/startup.sh /opt/startup.sh RUN sed -i 's/\r//g' /opt/startup.sh CMD ["/bin/bash", "/opt/startup.sh"] EXPOSE 80 443
alipneを使う
軽いは正義(ダウンロード、アップロードの速度、メモリ、ECRのストレージ等、色々効いてくる)なので、alpineを使ってなければalpineに変更しましょう。
でもalpineは色々ライブラリが入ってなかったりで、切り替えるのはけっこう面倒だったりします、、、
docker-compose build --parallel を使う
もしdocker-compose を使っていて複数コンテナを扱っているのであれば、parallelオプションを試してみましょう。 複数コンテナのbuildを並列でやってくれます。
.dockerignoreを使う
.dockerignoreファイルを使うと、COPYする時に不要なフォルダを除外できます。node_modulesとかvendorとかが不要なコンテナの場合は、COPY処理の高速化とコンテナサイズの縮小が望めます。
まとめ
公式ドキュメントをよく読むと色々ノウハウが載ってます。ログと合わせて、ちゃんと読むと色々対応方法がありそうです。
AWS CodeBuildのローカルキャッシュのCustom cacheでnode_modulesやvendorをキャッシュする
CodeBuildの新機能で、微妙にハマったのでノウハウをを。
classmethodさんが↑のブログをいい感じに日本語で説明してくれています。いつもありがとうございます。
ちなみに、この機能、日本語のマニュアルにはまだ反映されていないので注意が必要です。機能自体は日本リージョンで使えます。(2019/03/19現在)
今まで
S3にキャッシュする機構はあったので、それを使ってnode_modulesや、vendorフォルダをキャッシュする事によって、ビルドの高速化を実現できました。(差分があった時だけライブラリをダウンロードする事になるので。)
これだけでも性能的にはほぼ十分なのですが、
- S3のセットアップが微妙に面倒
- ネットワーク越しになるので、少し遅い
という弱点がありました。
ローカルキャッシュを使うと
新機能のローカルキャッシュを使うと、S3の設定をせずにキャッシュが実現できて楽ちんです。
コンソールで「Custom cache」にチェックを入れて、buildspec.ymlにキャッシュしたいディレクトリを指定するだけで動きます。しかもネットワーク越しではないので、S3を使う時よりも速いです。
ハマりポイント
というわけで、
cache: paths: - './node_modules/**/*' - './vendor/**/*'
って書けば終わりと思いきや、Dockerを使っている場合に罠があります。
こちらのオフィシャルブログにも書いているのですが、
Symlinks are used to reference cached directories.
「キャッシュディレクトリに対して、シムリンクを使うよ」と言っています。
ログを見るとなんとなくわかるのですが、こんなログが出ます。
[Container] 2019/03/19 XX:XX:XX MkdirAll: /codebuild/local-cache/custom/XXXXXXXXXXXXXXXXXXXXXXXXXXX/node_modules [Container] 2019/03/19 XX:XX:XX Symlinking: /codebuild/output/YYYYYYYY/src/github.com/XXXXXXX/XXXXX/node_modules => /codebuild/local-cache/custom/XXXXXXXXXXXXXXXXXXXXXXXXXXX/node_modules
/codebuild/local-cache/custom/
というディレクトリにキャッシュの本体があって、ビルド用のディレクトリの /codebuild/output/YYYYYYYY
からシムリンクを貼っています。
dockerはホストとのディレクトリの設定についてはsymlinkに対応してないので、この設定だと全然動きません。(フォルダが無いとか言われる)
ではどうするかというと、
phases: pre_build: commands: - echo ====== Set Cache ====== # .から始まる隠しフォルダもコピー - cp -r ./cache_node_modules/. ./node_modules/ - cp -r ./cache_vendor/. ./vendor/ post_build: commands: - echo ====== Set Cache ====== # .から始まる隠しフォルダもコピー - cp -r ./node_modules/. ./cache_node_modules/ - cp -r ./vendor/. ./cache_vendor/ cache: paths: - './cache_node_modules/**/*' - './cache_vendor/**/*'
こんな感じでキャッシュ専用のディレクトリを用意して、自分でコピーしてあげると、デフォルトでシムリンク先の実態をコピーしてくれるので、Dockerでもうまく動きます。また、最後にキャッシュフォルダに戻してあげる処理も必要です。
コメントでも書いてますが、 ./cache_node_modules/*
だと .bin
のような隠しフォルダがコピーされずにキャッシュの効果が半減するのでこちらにも注意です。
symlinkじゃなくて実態でcpしてくれるオプションがほしい、、、、
【vue】vue-test-utilsは@vue/test-utils になってるよ
Laravelでvue使ってて、vueのunitテストをしたい場合に使う(Laravel関係なく使うと思いますが、、、)nodeのライブラリでvue-test-utilsがあります。
なのですが、npmなりyarnで入れる時のpackage名はvue-test-utils
ではなくて @vue/test-utils
が正しいです。(変更になった)
GitHubのREADMEにはちゃんと書いてあります。 github.com
また、npm installする時にWarningも出してくれます。
warning vue-test-utils@1.0.0-beta.11: VUE-TEST-UILS WARN: vue-test-utils has moved to a scoped package. The new repository is available @vue/test-utils. To install the new package, run npm install --save-dev @vue/test-utils
Laravel系の記事だと、古い方になってる場合があるので注意した方がいいよ、という話でした。
【Laravel】【PHP】Laravel(mixも)でvueファイルのlintで自動修正させる
lint自体の設定はこちらで。
npm(yarn)から起動する場合は、package.jsonに
"scripts": { "lint": "eslint --fix --ext .js,.vue resources/js/",
みたいな感じで、--fix
をつければ自動で修正までしてくれます。(できる範囲で)
npm run devなり npm run hotで自動実行させる場合は、webpack.mix.jsに
mix.webpackConfig({ module: { rules: [ { enforce: 'pre', exclude: /node_modules/, loader: 'eslint-loader', test: /\.(js|vue)?$/, options: { fix: true } }, ] } });
みたいに、options.fix=true
な設定を入れればOKです。optionsは他にも色々設定できるので、工夫すれば色々できるかも。
Macの初期設定個人的メモ
個人的メモです。随時追記されます。
npmとかrubyとかそういうのはDocker作ってやる様にしてるのでローカルでは入れない主義。(バージョン違いの切り替え方がまちまちなので、全部コンテナで切り替える方が思考停止できるので楽)
本当はcaskなりでスクリプト化したいので、次に初期設定するタイミングで対応したい。
アプリ
- chrome
- google日本語入力
- スペースを半角固定にする
- 英数字を半角固定にする
- iterm3
- 設定はgithubから
- sublime text3
- docker
- line
- vim
- 設定はgithubから
- java
- virtual box
- vagrant
- git
- デフォで入ってるのは古いのでバージョンアップする
- git-lfs
- source-tree
- zsh
- 設定はgithubから
- JetBrainのIDE全部
- 設定はgithubから
コマンド系
Macの設定
- finderのサイドバー設定
- キーボードのcapsキー設定
- fnキー設定
- 日付表示
- 隠しファイル表示
- dock
- 固定されてるいらないアプリを削除
- アクティビティモニタを固定
- カーソルサイズ大きくする
- [システム環境設定] - [アクセシビリティ] - [ディスプレイ] [カーソルのサイズ]
Duet Displayを使ってiPadを外出時のサブディスプレイにした
元々モニタ多いのが好きな富豪タイプ(多ければ多い方が良い)なのですが、外で仕事する時は基本的にMacBookProだけで効率悪いな〜、という事で、普段あまり使っていないiPadをサブモニタにしてみました。
手順はこちらの通り。
設定はこちらの通り。
マウス操作よりはキーボード操作の方が相性が良かったので(若干ですがタイムラグを感じるので)、コンソールをiPad側に常駐させてます。
また、USB-Cのポートと物理的にぶつかってしまうので、iPadが右側固定です。
iPadProが欲しくなりました、、、
【ノマド】渋谷のコワーキングスペース「andwork」で海外でのノマドワーク気分(2019/10/18追記
概要
渋谷のコワーキングスペース「andwork」にドロップイン利用で行ってきたので、感想、使い勝手を共有します! ※2019/10/18再訪したので追記(半年ぶりに再訪してみたら印象が変わった)
推しポイント
宿泊の外国人が多いので海外で働いてる感を味わえる
andworkはゲストハウスとコワーキングスペースが併設されていて、ゲストハウスは場所柄外国人のお客さんが多いんですね。
で、コワーキングスペースは宿泊者のラウンジも兼ねているので、人が多いとこんな感じになります。日本人の方が少ないし、日本語もほとんど聞こえてこないです。
ドロップイン価格
- ¥800 1時間
- ¥3000 一日
なので高いです!
が、日経オフィスパスで4時間までは使えますので、会員の方は気にしなくてOKです。(日経オフィスパスについてはそのうち書きます
立地
渋谷からNHKに向かう途中で、看板は目立たないです。コワーキングスペース感も全然出てないです。
Wifi
下り350Mbps、上り380Mbpsなので爆速です。
椅子/机
あまり長時間の作業には向いてないです。カフェに近いです。
備品
特にないっぽい。
ドリンク
コーヒーだけが飲み放題です。
まとめ
営業形態 | コワーキングスペース | |
---|---|---|
ドロップイン価格 | | |
立地 | | |
Wifi | | |
椅子/机 | | |
備品 | | |
ドリンク | | |
その他 |
※評価は主観です。また、訪問タイミングによって変わります。
2019/02/08訪問時
hotel koe tokyoが合わなかったので場所を移動してみました。 こちらもホテルに併設のコワーキングスペース。
koeからは徒歩1分くらいです。
結果
koeに比べるとサイバーというかインテリジェンスを感じる雰囲気でした。
快適なんだけど、いかんせん値段が強気過ぎます。
1時間800円、一日で3000円はちょっと払えないですね。3000円あったらホステルに宿泊できるぞ、、、
高い分、
- コーヒー飲み放題
- バルミューダの家電が揃っててテンションあがる
- かっこよくて欲しくなりました、、、
- Wifi快適
- めっちゃ空いてた
- 一日滞在の場合は時間が長い(朝6時30分~翌1時)
- 宿泊の外国人が多いので非日常感味わえる
というメリットがあります。
日常使いには厳しいですが、今日はやるぞ!みたいな特別な日に使うと良さそうです。
他のコワーキングスペースについての情報はこちら。
【ノマド】渋谷のカフェ「hotel koe tokyo」(のカフェ)でノマドワークしてみた
最近ホテルにコワーキングできるカフェを併設するのが流行ってるらしい、、、という情報を入手したので行ってみました。 場所は渋谷のパルコのあたりです。一等地。
結果
コーヒーとパン(恋するいぶりがっこ)美味しかったです。 雰囲気もまるで海外みたいで素晴らしです。
が、とにかく電波が悪くて仕事になりませんでした。残念です。電源はあります。
客層はエンジニア以外の、デザイン系の方が多そうでした。
コーヒーが美味しかったので、食事は全体的に期待できそうです。
というわけで、ちょっとした打ち合わせ兼ランチとかならとても良いと思います。
【Laravel】【PHP】「laravel-mix」が依存している「webpack-dev-server」で「high severity vulnerability」と言われた場合の手順
以下の環境で発生しましたので、対応方法メモ。
- Laravel 5.6.39
- Laradock
- composerからcreate projectした
ログ
found 1 high severity vulnerability run `npm audit fix` to fix them, or `npm audit` for details
$ npm audit root@1f443744df67:/var/www# npm audit === npm audit security report === # Run npm install --save-dev laravel-mix@4.0.14 to resolve 1 vulnerability SEMVER WARNING: Recommended action is a potentially breaking change ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Missing Origin Validation │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ webpack-dev-server │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ laravel-mix [dev] │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ laravel-mix > webpack-dev-server │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://nodesecurity.io/advisories/725 │ └───────────────┴──────────────────────────────────────────────────────────────┘ found 1 high severity vulnerability in 11836 scanned packages 1 vulnerability requires semver-major dependency updates.
laravel-mixが参照しているwebpack-dev-server が脆弱性があるバージョンになっているようです。
package.json
"laravel-mix": "^2.0
auditが教えてくれる通りに実行
$ npm install --save laravel-mix@4.0.14 + laravel-mix@4.0.14 updated 1 package and audited 14844 packages in 34.812s found 0 vulnerabilities
問題なくなりました。
package.json
"laravel-mix": "^4.0.14",
Laravelのバージョンに寄っては発生しないかも。
2018-2019 ドイツメルヘンの旅②〜ケルン〜
はじめに
前回はこちら
ケルンを観光します。
7:00頃 フランクフルト空港駅出発
こんな予定で。
ICEというドイツの新幹線で2駅です。 1時間なので、東京から静岡や軽井沢くらいの距離感です。日帰り旅行にぴったり。
フランクフルトは空港駅と中央駅の2つあります。さらに、空港駅のも近距離用と遠距離用に別扱いになってて難しいです。
- フランクフルト空港近距離駅 -> Frankfurt (Main) Flughafen Regionalbahnhof
- フランクフルト空港遠距離駅 -> Frankfurt am Main Flughafen Fernbahnhof)
- フランクフルト中央駅 -> Frankfurt (Main) Hauptbahnhof
全部Mainってついてるからよくわかりません、、、
フランクフルトはサッカーの長谷部選手が、ケルンは大迫選手が昨シーズンまで、終点のドルトムントは香川選手がいるところですね。サッカーはお休み期間なので見られないですけど。
1等と2等と食堂車(ロマン!)に分かれていて、今回は買ったチケットは2等です。 せっかくだし1等にしようか、、と悩んだのですが、結果としては十分でした。
お客さんいるので写真ないのですが、日本の新幹線と同じくらいの車幅に対して2列ずつの座席なので、日本の新幹線のグリーン車相当の余裕があります。電源もWifiもあります。
体が比較的大きいドイツ人サイズに作られているので、もやし体型の私には十分です。快適。
指定席と自由席は分かれていなくて、予約されてない席が自由席になります。(ジャーマンレイルパスはお金を出せば座席指定もできます。)
各席毎に予約されているかが小さな電光掲示板的なもので書かれていますが、ドイツ語なのでわからないので、とりあえず空いてるところに座ります。
8:00頃 ケルン到着
ちょうど日が昇り始めたタイミング。
ここでも駅に降りると焼き立てパンの良い匂いが、、、
とりあえずサンドイッチ的なものを買ってみました。 ごまが美味しい!
さて、目的のケルン大聖堂を見るぞ〜地図はどこかな〜と駅を出たら、なんといました。駅から徒歩0分w
朝早いのでまだ観光客少ないし、ちょうど朝日が昇るタイミング。 かっこいい。 ドラクエに出てきそう。
中に入ってみたら、またかっこいい! 壮大で力強い建物です。
リアルでミサやってました。ドイツ語だから何言ってるかさっぱりだけど。 オルガン(パイプでは無い)が良い感じのリバーブで響き渡る、、、
一通り見たので周辺を散策。 裏側から見た大聖堂。
これは、お姫様が呪いで囚われてそうな城!(ゲーム脳) ※教会です
ケルシュ(ケルンビール)を飲みたいのだけど、さすがにお昼にならないとやってないので時間をつぶすべく動物園に行くことに。
本当は路面電車があるんだけど、天気も良いのでライン川沿いを歩いてみる事にしました。
桜?なぜか咲いてます。
10:00頃 動物園到着
あまり下調べせずに来たのですが、ここの動物園、私の想像を超えておりました、、、
入り口から不穏な空気を醸し出しています。
入場。なんか中国フェス的なのをやってるらしいです。
?
?
!?
動物が、、、少ない!?よくわからない像がたくさんあります。
お、これは中に象がいるに違いない。
中はサイでした。しかもいない。
おや、これは!
じゃーん
象
象はこっち
いません!
隣の建物に避難してました。(そんな案内一言もなかったぞ)
とにかくいるはずの所に動物がいなくて(たまにいます)、代わりに像で水増ししています。 おまけに中国フェスのおかげでよくわからない像もあって本当にカオス。
お、これは本物!
と思いきや、奥の色が濃いのは像です。紛らわしい、、、
以降、良くわからない像の写真をどうぞ。 多分、始皇帝
かわいくない
なぜ松
これは何者なんだ、、、
というわけで思ったより満喫して良い時間になったのでケルシュを飲みに移動! 帰りは路面電車で。みんなと同じ方向の電車に乗って降りたら、DBの駅前でした。良かった〜
13:00頃 ケルシュ飲む
ケルシュはここで飲むことにしました。理由はお店の名前が某宇宙世紀の国みたいでかっこよかったから。 goo.gl
本場のケルシュ!(たしか200円くらい。安い!)
おかわりすると、コースターに棒を書き込んでくれます。これでおかわりの杯数を把握してるみたい。
おつまみはウインナー。でかい!
結局4杯くらいのんで良い感じになったのでお会計。たしか3000円くらい。
15:00頃 大聖堂登る
大聖堂もう1回見ようと思って寄ったら、どうやらここに登れるようです。
お、せっかくだし行くかと思って気軽に入ったのですが、思わぬ苦戦を強いる事に、、、
このせまい階段をひたすら登ります。しかも降りる人もこの階段だから、すれ違うのに一苦労です。
バックパックが辛い、、、酔った状態で来るところじゃない、、、
俺知ってる、これは影から敵が飛びでて来るやつだ(ゲーム脳)
まだ続きます。
すげー良い景色なんだけど、そもそも高所恐怖症だし、酔ってるのに運動して吐きそうなので、死にそうになりながら降りました。あの階段を。
ケルン大聖堂に登る時は、ビールを飲む前がおすすめです!
ケルンを満喫したので、ホテルがあるフランクフルトへ戻ります。
18:00くらい ホテル着
安いホテルですが、十分綺麗。というか天井高いなおい。
時差で眠いのだけど、名物のリンゴ酒を飲みに徒歩で移動。 目的のお店は満杯で入れなかったので、近くの別のお店にしました。日本のバルって感じ。
これがリンゴ酒。思ったより酸味が強いです。美味しい。
食べ物はお昼にドイツ料理食べたので別のものにしたかったので、ひよってパスタになりました。
今回はここまで。動物園が想定外でしたが、初日から濃くて楽しかった〜
この日の移動
【書評】「スタンフォード式 最高の睡眠」を読んだ
- 作者: 西野精治
- 出版社/メーカー: サンマーク出版
- 発売日: 2017/02/28
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (7件) を見る
けっこう良い本だった。 色々書いてあるが、とにかく最初90分の質を高める事の重要性を色々な角度から説明している。
- 睡眠の研究はここ最近で急激に進んでいる
- 睡眠は人生の1/3を占めるのに軽視されがち
- ちまたで言われている90分サイクルは人によって差があるので、長さはあまり気にしてもしょうがない
- が、サイクルを意識する事は大事
- 1サイクル目は超重要
- 1サイクル目が崩れると、以降、いくら寝てもダメ
- 現代人が十分な睡眠時間を確保し続けるのは現実的に難しい
- なので、1サイクル目の質を高める事により、睡眠全体の質を高める事が大事
- 慢性的な睡眠不足の解消には数ヶ月かかる
- なので、週末に寝だめする程度では効果は薄い
- 睡眠の導入には体温調整が有効
- 手足を温める -> 深度体温が下がる -> 眠たくなる
- ので、寝る前のお風呂は有効
- 眠り始める時間を固定化すると良い
- 眠りの習慣が体内時計として染み付くので
- 忙しい時も、起きる時間を早める事で調整する
- 睡眠を司るホルモンがわかってきている
- 睡眠不足の時のホルモンは食欲を増す
- ので、寝ないと太る
- 睡眠不足の時のホルモンは食欲を増す
- お酒は短時間に強めのを飲むほうが良い
- 睡眠の導入効果があるので
- だらだら飲むのはダメ
- 眠りが浅くなる
nuxt.js + dockerの組み合わせでローカルからport3000につながらない時の対処
表題の通りです。微妙にはまったので。
結論
ENV HOST 0.0.0.0
が必要
状況
dockerコンテナの中から
curl localhost:3000
だとつながるのに、ローカルのブラウザからだとつながらない。
また、
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1111c70f2289 stand_node "node" 7 minutes ago Up 7 minutes 0.0.0.0:3000->3000/tcp stand_node_1
で、portが問題無くforwardされてる事も確認済。
DockerFileでも
EXPOSE 3000
と設定している。
調査
ぐぐったら出てきた。
hostで外部アクセスを制御してるので、許可する設定(例だと0.0.0.0なんで全部OK)が必要との事。
2018年を振り返って2019年の目標を考えた
あけましておめでとうございます。今年の年越しはドイツのカッセル(Kassel)で過ごしたのですが、1回目(日本時間)は「チーズ入りカツレツのチーズ掛け〜山盛りポテトを添えて〜」を食べながら、2回目(現地時間)は睡眠中でした。
というわけで節目ですので、今年どういう1年にしたいか考えてみました。
2018を振り返る
ブログ
わかりやすいところでこのブログについてから。
49記事書きました。 2017年の12月にブログ再開しようと思ってから、それなりに続けることができました。累計だと97記事。
テーマとかばらばらですが、第1弾としては書く習慣をつけたかったので、目的は達成できました。
ちまたでは100記事が目安らしいので、100記事達成したら見せ方とか少し考えようかな。あまり工数かける気はないので、少しだけ。
累計のPVも10000を超えました。PV数追っかけてるわけではないですが、それでもうれしいです。ありがとうございます。
お仕事
お仕事は環境面では激動でした。
10年くらい続けたサラリーマン生活から、フリーランスになりましたが、ありがたい事に食いっぱぐれる心配は無さそうです。感謝感謝。
一方で、フリーランスとして良い感じのアウトプットを出せているか、というと個人的にはまだまだだと思っています。次のステップに対しての時間と労力の使い方も全然できてないです。
日々の忙しさに追われてしまっていたのは反省。
エンジニアとして技術系もろもろ
2018前半(株式会社よりそう勤務中)は、色々チャレンジできました。
- 外へのアウトプット
- 勉強会でLTしたり
- AWS Summit Tokyo2018で話したり
- 新しい技術への取り組み
- コンテナ系
- Nuxt.js使ってSPA
- Go使ってAPI
一方、後半はこういったチャレンジはあまりできませんでした。フリーランスになる準備とかに追われてた感じです。
フリーランスとしてはフルスタックのWebエンジニアを名乗っているのですが、幅が広い分一つ一つが浅くなってしまっています。ある程度技術領域をしぼって自分を投資しないといけないと感じています。
音楽
ライブは5回くらいやったのかな? 自分が企画してバンマスはやってなくて、セッションもお休み気味で、だいぶ抑え気味でした。
このぐらいのペースだとライブの感覚も忘れて瞬発力が下がっちゃうので、パフォーマンスの事を考えればもっとしたいところではあるけど、他との兼ね合いもあるので悩ましい所。
旅行
- 1月 和歌山
- 7月 北海道
- 9月 東北
- 12月 ドイツ
けっこう行ってますねw 日帰りも含めたらもっとあります。
これ書いてるときはまだドイツにいるのですが、ずっと行きたかったヨーロッパに来れて満足しています。寒いし弾丸だったので、次は暖かい所でのんびりかな?
健康関連
健康診断的には何の問題も無いのですが、体力の衰え(と、それから来る集中力の低下)を感じるようになったので、改善活動に取り組みました。
- 睡眠
- 朝型人間へ
- ジム行く
- 3次会まで行ってた所を、2次会までしか行かない
とくに睡眠については小学校の時から夜型で朝弱かったので、一世一代の改善活動になります。
本
多くは無いですが、継続的に読む習慣を取り戻せたので良かったです。ついでにブログでアウトプットする(メモ程度ですが)というのもセットでやると、知識が定着するようで、こちらも良かったです。
その他
英語はTOEICを少しやりましたが、いつのまにか止まってますね、、、
2019はこうしたい
いきなりタイトルと違いますが、前半と後半に分けます。
今、これは!という熱中できるものが無いので、それを見つけるのが前半。後半はそれに対して取り組むのを全体としての目標にします。
さすがに1年も自分探しみたいなのをやるのは、この年齢だと恥ずかしいと思ったので、半年にしましたw
それ以外で良い習慣だと思っているものは引き続き。
通年通して
- 健康
- 引き続き朝型に
- 朝ごはん食べる時間は確保できるくらいが最低限
- 良い睡眠
- 夜更かししない
- 良い睡眠
- 朝ごはん食べる時間は確保できるくらいが最低限
- 筋肉量増やす
- 体脂肪率15%くらいに
- 今体脂肪率が18%くらいなのは純粋に筋肉が足りなくてmoyashiだから。筋トレして筋肉量増やせば解決するはず・・
- 体脂肪率15%くらいに
- 引き続き朝型に
- ブログ
- ペースは2018年くらいで十分
- 継続的に何でも良いから書いて考えをまとめる、アウトプットするという習慣になっている
- 質をどうにかしたい
- テック系のネタの割合を増やしたい
- 小ネタでも良いので、半分くらいはテック系に
- テック系のネタの割合を増やしたい
- ペースは2018年くらいで十分
- 本
- 引き続きでOK
- 英語
- 再開する
- モチベーションの見直しから
- 再開する
2019前半
- エンジニアとして技術系もろもろ
- 引き続き色々やるが、俺はこれの専門家になる!というのを固める事を意識してやる
- しょぼくて良いので個人サービス1個リリースする
- 自分用のTODOアプリ作ってるので多分それ
- 業界研究する
- ビジネス系弱いので
- 音楽
- 引き続き抑え気味になると思われる
- とは言え成長したいので、新しい試みとしてギターを習ってみる(初めて)
- 引き続き抑え気味になると思われる
2019後半
2019前半でやりたい事を決まるはずなので、それをやる
というわけで
2019年もよろしくおねがいします。
写真は年明け翌々日のベルリン。
2018-2019 ドイツメルヘンの旅①〜ドイツまでの移動〜
はじめに
年末年始を利用して、ドイツに旅行に行くことにしました。
初ヨーロッパです。
興味がある街であるベルリンは必須で、それ以外はどうしようかと思ったのですが、メルヘン街道を行くことにしました。 行程の詳細はお楽しみという事で。
ドイツの事って以外と知らないと思うので(私もそうでした)、適当にドイツtips挟んでいきます。
今回はドイツまでの移動編です。
大崎〜成田空港
8:00 大崎出発
¥1000で成田空港までバスが出ています。東京駅からが本数が多いのですが、自宅が近いので大崎から。
初めてみたタイプのかっこいい座席でした。目隠し付き。
WifiもUSBの充電もついてるし快適でした。
特に何事も無く到着。
9:20 成田空港第2ターミナル到着
最初の移動は韓国・ソウルの仁川(インチョン)国際空港まで。 Tway Airlinesという韓国のLCCです。
最終的にはドイツのフランクフルトまで行くのですが、skyscanner経由のkiwi.comというサイトで予約しました。チェコの会社みたいです。
全然聞いたことなかったので不安を覚えるも、良い感じに安かったので、、、
Twayはオンラインチェックインに対応してないとの事で、頑張って並んでカウンターでチェックイン。 ユーロに数万円分を両替。大体のお店やホテルはクレジットカード使えそうだし、海外キャシングもできるので、多分少なめで大丈夫な見込み。
出発まで時間があったので、日本食としばしのお別れ会。
出国手続きですが、顔認証が導入されていてすごい楽ちんでした。知らなかった。
成田空港〜仁川国際空港(韓国のソウル)
12:40 成田空港を出発
本当は12:00予定だったのですが、なんやかんだで遅れて出発。まあLCCなので。しかしこれが後ほど後を引くことに、、、
中は何の設備もないので、寝たりKindleで本読んだりして時間を潰します。こういう時にKindleは最高です。しかも最近PaperWhiteにしたのでバックライトがついたおかげで、飛行機内が暗くても読みやすくて良かったです。買って良かった。
16:00頃 仁川国際空港に到着
予定より1時間ほど遅れて到着。まあLCCなので、、 次はベトナム航空に乗り換えて、ベトナムのハノイへ向かいます。
乗り継ぎの手続きをしようと思って乗り継ぎカウンターに行ったら、色々調べていただいたのですが、ここではできない、との事。
kiwi的にはTway -> ベトナム航空の乗り継ぎは航空会社ではサポートしてなくて、自分で自分でなんとかしてね、という事になっていて(遅延とかで乗り継ぎできなかった時の保証付き)、乗り継ぎカウンターに行けばどうにかなるだろ、と思ってましたがどうにかなりませんでした。
じゃあどこで手続きするかと言うと、普通のチェックインカウンター。つまり、一旦韓国に入国しないといけないのです。
スタッフのお姉さんに先導されて(なんか社員用の通用口とか通った)、イミグレーションへ。仁川はターミナル同士の移動に電車乗ります。 この時16:50。チェックインは17:15まで。
とは言ったものの、イミグレーションは普通に並ぶしかないので急ぎようがない。なんとか入国。この時17:05。
そのままダッシュで乗り継ぎ先のベトナム航空のチェックインカウンターへ。
なんとか間に合いました、、、疲れた、、
その後すぐに出国して(韓国の滞在時間10分)、乗り場へ。
登場手続き終了まで10分くらいしか無かったので、急いでカロリーを摂取(お寿司から何も食べてないし走ったのでくたくた)。
キウイ(kiwiではない)100%ジュースと
ダンキンドーナッツ
急いで食べたのに、出発が少し遅れてたので、こんなに急いで食べる必要無かった。ついでに言うと、この後すぐに機内食も出てきた。とほほ、、
仁川国際空港〜ノイバイ国際空港(ベトナムのハノイ)
18:00過ぎ 仁川国際空港を出発
何も言われなかったけど、どうやらビジネスクラスの席だったみたいで超快適でした。ラッキー。
この横の肘掛け部分をパカっとあけると、テーブルとかテレビが見られるタブレットが出てきます。
機内食もまあまあ美味しかった。(豚キムチご飯) ワインも飲みました。
やっぱLCCとは違いますね、、、
21:00頃ハノイに到着
※現地時間。ハノイは日本と2時間の時差があるので、日本では23:00頃。
次もベトナム航空で既にチェックイン済なので、今回は大丈夫。乗り継ぎまでの1時間を利用してフォーを食べます。
付け合せの葉っぱがワイルドでおいしいです。木の枝そのままだし。
よしドイツへ行くぞ〜と思ったら出発が1時間延びるとのこと。しょうがないのでハノイビール飲んで過ごします。
このあっさりとした味、すごく南国感。
というか湿気すごいし暑すぎです。ドイツ寒いのでけっこう厚着してきたのに、半袖に。寒暖差つらいな〜と思いつつ、ベトナムは旅行した事ないのでそのうち行こうと決意。フォー美味しかったし。
ノイバイ国際空港〜フランクフルト空港
23:55 ハノイを出発
というわけで最後の乗り継ぎを無事終えて出発。
さっきみたいにビジネス席ではなかったけど、そもそも機内はがらがら。
3席を独占できました。お行儀わるいけどみんなを真似して3席に横たわって寝ました。10時間以上のフライトなので助かりました。
途中の機内食は2回。ごちそう様でした。
5:30頃 フランクフルト空港到着
※現地時間。日本とドイツの時差は8時間なので、日本だと13:30。
予定より少し早く到着。寒いです。早朝なのもあって、0度切ってるはず。
イミグレーションのスタッフの背の大きさと鼻の高さに驚きつつも、あっさり抜けてDB(ドイツ鉄道)の駅へ。
まずはターミナル間の移動のために無料のバスに乗ります。 2台連結されてます。(このタイプのバス、ドイツでけっこう見る)
そしてDBのオフィス(みどりの窓口的な。赤いけど)でジャーマンレイルパスを購入。 今回のメイン足になるやつです。
ジャーマンレイルパスとは、ドイツ内 + 周辺の国少しの電車が乗り放題になる切符です。 日本だと青春18きっぷみたいなものですが、こいつのすごいところはドイツの新幹線も乗れる事です。(ただし路面電車、地下鉄、バスは対象外) www.raileurope-japan.com
日本にもほしい!と思ったらあるんですね。海外からの旅行客専用ですけど、、
JAPAN RAIL PASSとは? | ジャパン・レール・パス | JAPAN RAIL PASS
後は大人の休日倶楽部限定で買えるやつとか、、早く50歳になりたい、、 jre-ot9.jp
ジャーマンレイルパスはドイツ人も買えるし、27歳まで対象のユースもあって良いです。ついでに二人切符もかなり安いです。
ドイツは四角い形をしているし、山も少ないので新幹線に乗ればけっこう自由に移動できるようです。 例えば北の街ベルリンから、南の街ミュンヘンまでは約5時間。東京〜博多くらいですね。
7日間のフレキシー(日が連続してなくていいやつ)を購入して、いざICE(新幹線へ)。
駅のキヨスク的な。焼き立てのパンの匂いがします。ザ・ヨーロッパ!
では今回はここまで。次回はケルン編。