tag:crieit.net,2005:https://crieit.net/users/fk2000/feed fk2000の投稿 - Crieit Crieitでユーザーfk2000による最近の投稿 2018-12-04T19:11:53+09:00 https://crieit.net/users/fk2000/feed tag:crieit.net,2005:PublicArticle/14625 2018-12-04T19:11:53+09:00 2018-12-04T19:11:53+09:00 https://crieit.net/posts/Packer-CentOS7-VM-Pane-is-Dead PackerでCentOS7のVMを作ろうとしたらPane is Dead <p>PackerでCentOS7のVMを作ろうとして、以下のコードをgit pullして実行したら積んだお話</p> <p><a target="_blank" rel="nofollow noopener" href="https://github.com/boxcutter/centos">https://github.com/boxcutter/centos</a></p> <p>kickstart/centos7/ks.cfg のkeyboardをUSキーボードからJP106配列に変えたくて</p> <pre><code>- keyboard us + keyboard jp 106 </code></pre> <p>ってしたら、VMのGUI画面に「Pane is Dead」って出てフリーズした。</p> <p>正解はこうらしい。</p> <pre><code>keyboard --vckeymap=jp106 --xlayouts="jp106" </code></pre> fk2000 tag:crieit.net,2005:PublicArticle/14608 2018-11-20T18:04:59+09:00 2018-12-20T15:15:12+09:00 https://crieit.net/posts/Hugo Hugoでブログ付きのポートフォリオサイト <p>この記事はCrieitの「<a href="https://crieit.net/advent-calendars/2018/crieit">アドベントカレンダー Advent Calendar 2018</a>」の11日目の記事です。<br /> 昨日は<a href="https://crieit.net/users/Naturalclar">Naturalclar</a>さんの<a href="https://crieit.net/posts/Twitter">米国からTwitter転職で日本に来たら楽しくて仕方ない話</a>でした!</p> <h1 id="背景"><a href="#%E8%83%8C%E6%99%AF">背景</a></h1> <p><del>アドベントカレンダーのネタのために何か作らなくちゃ</del>静的なサイトでお手軽なサイトでも立ち上げようかと思いGolangの勉強がてらHugoでサイトを構築してみました。</p> <h1 id="苦肉の策"><a href="#%E8%8B%A6%E8%82%89%E3%81%AE%E7%AD%96">苦肉の策</a></h1> <p>とにかく時間がないので、ちゃっちゃと終わらせるために、Hugoはhomebrewでインストールして、一度構築用のリポジトリを作成しておき、Github Pagesならぬ、Bitbucket Pages(そんなサービスは無い)にあげてGoogle Analyticsで監視するようにしました。</p> <p>※Bitbucket Cloudというみたいです。</p> <p><a target="_blank" rel="nofollow noopener" href="https://confluence.atlassian.com/bitbucket/publishing-a-website-on-bitbucket-cloud-221449776.html">https://confluence.atlassian.com/bitbucket/publishing-a-website-on-bitbucket-cloud-221449776.html</a></p> <h1 id="実際のサイト"><a href="#%E5%AE%9F%E9%9A%9B%E3%81%AE%E3%82%B5%E3%82%A4%E3%83%88">実際のサイト</a></h1> <p><a target="_blank" rel="nofollow noopener" href="https://hugofkworld.bitbucket.io/">https://hugofkworld.bitbucket.io/</a></p> <p><a href="https://crieit.now.sh/upload_images/90e98713db199120d58ae0345db13ecf5bf3cd1164b1f.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/90e98713db199120d58ae0345db13ecf5bf3cd1164b1f.png?mw=700" alt="https://hugofkworld.bitbucket.io/" /></a></p> <p>構築用のソースコードは<a target="_blank" rel="nofollow noopener" href="https://[email protected]/hugofkworld/hugo-fk-world.git">こちら</a><br /> 運用用のソースコードは<a target="_blank" rel="nofollow noopener" href="https://[email protected]/hugofkworld/hugofkworld.bitbucket.io.git">こちら</a></p> <p>多言語対応できるテンプレートを使ったのですが、JPサイトが空だったり、Projectsが空だったりしますが、ちびちび書き足していきます。</p> <p>blogもこちらがキャッチーなのでうまく運用維持できたら更新していくかもしれません。</p> <h1 id="参考にしたサイト"><a href="#%E5%8F%82%E8%80%83%E3%81%AB%E3%81%97%E3%81%9F%E3%82%B5%E3%82%A4%E3%83%88">参考にしたサイト</a></h1> <ul> <li><a target="_blank" rel="nofollow noopener" href="https://qiita.com/syui/items/869538099551f24acbbf">Bitbucketで静的ウェブサイトを公開する</a></li> <li><a target="_blank" rel="nofollow noopener" href="https://qiita.com/syui/items/869538099551f24acbbf">HUGOを使ってサイトを立ち上げる方法</a></li> <li><a target="_blank" rel="nofollow noopener" href="https://dev.to/dgavlock/creating-a-hugo-site-on-github-pages-3cjo">Creating a Hugo site on GitHub Pages </a></li> </ul> <p>明日は<a href="https://crieit.net/users/rubys8arks">かしい@お笑いSNS作成中</a>さんの記事です!</p> fk2000 tag:crieit.net,2005:PublicArticle/14571 2018-10-19T18:29:16+09:00 2018-10-28T16:39:41+09:00 https://crieit.net/posts/web-docker-letsencrypt-swagger-Flutter 少人数で高速でスマホとwebサービスを立ち上げたかったらdocker、letsencrypt、swagger、Flutter <p><a href="https://crieit.now.sh/upload_images/f8505be55adf1353d8ca75270cef66c55bc9a271c44d9.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/f8505be55adf1353d8ca75270cef66c55bc9a271c44d9.png?mw=700" alt="DSLF.png" /></a></p> <h1 id="概要"><a href="#%E6%A6%82%E8%A6%81">概要</a></h1> <p>スマホアプリを作る場合、API用のサーバ立ててスマホアプリのクライアントからRESTでジャラジャラ繋ぐと思うんだけど、サーバ側の構築にコストかけられない。<br /> ドメイン取ってコードをデプロイしたらさっとAPIサーバくらいは立って欲しいと思う。その場合、DockerでさっとSSL化自動で証明書取得されると素敵じゃないですか。</p> <h2 id="Docker"><a href="#Docker">Docker</a></h2> <p>それならばdockerイメージでいいのがあったので、使い倒しましょう。</p> <pre><code>jwilder/nginx-proxy </code></pre> <pre><code>jrcs/letsencrypt-nginx-proxy-companion </code></pre> <p>上のDockerイメージをdocker-compose.ymlに記述して、docker-compose up -dを実行するだけで、let's Encryptによる自動SSL化機能のついたletsencrypt-nginx-proxy-companionと、nginx-proxyが立ち上がります。</p> <pre><code>nginx-proxy/docker-compose.yml version: '2' services: nginx-proxy: image: jwilder/nginx-proxy container_name: nginx-proxy ports: - 80:80 - 443:443 volumes: - ./certs:/etc/nginx/certs:ro - /etc/nginx/vhost.d - /usr/share/nginx/html - /var/run/docker.sock:/tmp/docker.sock:ro restart: always letsencrypt-nginx-proxy-companion: image: jrcs/letsencrypt-nginx-proxy-companion container_name: nginx-letsencrypt volumes: - ./certs:/etc/nginx/certs - /var/run/docker.sock:/var/run/docker.sock:ro volumes_from: - nginx-proxy restart: always </code></pre> <p>参考URL: <a target="_blank" rel="nofollow noopener" href="https://qiita.com/pipinosuke/items/e35368711c845b04fde7">Dockerで簡単にマルチドメインかつSSL証明(自動更新) nginx-proxyとLetsEncrypt</a></p> <h2 id="Swagger"><a href="#Swagger">Swagger</a></h2> <p>API側はSwaggerでサクッと作ります。</p> <p>Swagger Editorを使ってswagger.yml(swagger.jsonでも可)を書けば、モックとして起動もできるし、サーバー側、クライアント側それぞれの言語でのソースも自動生成できる。最終的には、APIドキュメントも生成できるので、一度yaml、またはjsonを作って仕舞えば、同じAPI設計のアプリを量産できる優れもの。</p> <h2 id="Flutter"><a href="#Flutter">Flutter</a></h2> <p>問題はアプリ側、こちらはさっと作る手段がまだなくてせいぜいFlutterでAndroidとiOSを同時にビルドするくらいなもの。</p> <p>もう少し検証と実践を積んだら記事にします。</p> <h1 id="結論"><a href="#%E7%B5%90%E8%AB%96">結論</a></h1> <p>じゃんじゃんアプリとWebを作って世の中の技術向上に貢献しましょう!</p> <h1 id="補足"><a href="#%E8%A3%9C%E8%B6%B3">補足</a></h1> <p>私の<a target="_blank" rel="nofollow noopener" href="https://www.kichij.org/">Wordpress</a>も、上記のDocker、Let's Encryptの環境に移行しました。</p> fk2000 tag:crieit.net,2005:PublicArticle/14565 2018-10-10T19:35:48+09:00 2018-10-26T08:28:47+09:00 https://crieit.net/posts/Wordpress-S3-SendGrid-Heroku-Composer Wordpressを無料でS3、SendGrid、Heroku、Composerでデプロイする <p><a href="https://crieit.now.sh/upload_images/3e0a99d4c9d3bf6999aa40837f8a26475bbdd5cd82288.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/3e0a99d4c9d3bf6999aa40837f8a26475bbdd5cd82288.png?mw=700" alt="logo-composer-transparent5.png" /></a></p> <p><a target="_blank" rel="nofollow noopener" href="https://github.com/PhilippHeuer/wordpress-heroku">https://github.com/PhilippHeuer/wordpress-heroku</a></p> <p>こちらのGithubにある「Deploy to heroku」ボタンをクリックすることでも構築できるのですが、画像やプラグインを永続的に維持するためにはローカルに構築してcomposer updateしてから差分をgit pushし、同じソースコードをherokuにデプロイする必要があるのでした。</p> <p>いろいろいじってやってみたところ、なんとかできたので、この後もいろいろ試したいと思う。</p> <p>一番苦労した点は、英語版Wordpressを日本語化する方法だった。</p> <p>ローカルでWP CLIを使って日本語化ファイルをダウンロードし、git pushしたらできた。</p> <p><code>wp core language install ja --activate</code></p> <p>参考URL<br /> <a target="_blank" rel="nofollow noopener" href="https://upd.world/wordpress-cloud9/">https://upd.world/wordpress-cloud9/</a><br /> <a target="_blank" rel="nofollow noopener" href="https://qiita.com/miya0001/items/96a684e2f819f9d8b4a4">https://qiita.com/miya0001/items/96a684e2f819f9d8b4a4</a><br /> <a target="_blank" rel="nofollow noopener" href="https://qiita.com/fuwamaki/items/8684003bb47197336645">https://qiita.com/fuwamaki/items/8684003bb47197336645</a></p> fk2000 tag:crieit.net,2005:PublicArticle/14561 2018-10-04T15:56:55+09:00 2018-10-29T19:12:06+09:00 https://crieit.net/posts/26f2a8416e593550d814fb19397361cf セマンティック バージョニング <p><img src="https://thepracticaldev.s3.amazonaws.com/i/yx38a7nohichwljyntor.png" alt="semver.org" /></p> <h1 id="What is this?"><a href="#What+is+this%3F">What is this?</a></h1> <p>バージョニングのルールです。</p> <p>主に公開されるAPIのバージョンの付与規則と言うことです。</p> <h2 id="Links"><a href="#Links">Links</a></h2> <ul> <li><a target="_blank" rel="nofollow noopener" href="https://semver.org/">Semantic Versioning 2.0.0</a></li> <li><a target="_blank" rel="nofollow noopener" href="https://semver.org/lang/ja/">日本語訳</a></li> <li><a target="_blank" rel="nofollow noopener" href="https://html5experts.jp/t32k/11746/">t32k、怒られる!セマンティック バージョニングしてますか?</a></li> </ul> <h2 id="同意する場合"><a href="#%E5%90%8C%E6%84%8F%E3%81%99%E3%82%8B%E5%A0%B4%E5%90%88">同意する場合</a></h2> <blockquote> <p>セマンティック バージョニングを実践していることを宣言し、ルールを守って下さい。それからあなたのREADMEからこのWebサイトにリンクしてください。</p> </blockquote> fk2000 tag:crieit.net,2005:PublicArticle/14546 2018-09-19T19:42:20+09:00 2018-10-23T19:16:06+09:00 https://crieit.net/posts/golang-echo-Now golangのechoで静的なサイトを建てるならNowがお手軽という話 <p><a target="_blank" rel="nofollow noopener" href="https://zeit.co/now">Now</a>というPaasが、golangをデプロイするのにお手軽だということがわかった。</p> <blockquote class="twitter-tweet" data-lang="ja"><p lang="ja" dir="ltr">golang echo でサーバ書いて Dockerfile 書いて now でアップロードしてみた。ドメインは適当に取って now ln で alias 張った。めちゃ簡単だし LE も作ってくれる。便利やん。<a target="_blank" rel="nofollow noopener" href="https://t.co/fXT7yR2BZC">https://t.co/fXT7yR2BZC</a></p>— mattn (@mattn_jp) <a target="_blank" rel="nofollow noopener" href="https://twitter.com/mattn_jp/status/1042078292944093184?ref_src=twsrc%5Etfw">2018年9月18日</a></blockquote> <h2 id="公開するまでの手順"><a href="#%E5%85%AC%E9%96%8B%E3%81%99%E3%82%8B%E3%81%BE%E3%81%A7%E3%81%AE%E6%89%8B%E9%A0%86">公開するまでの手順</a></h2> <ul> <li>Nowのアカウントを作成する</li> <li>DotTkで無料ドメインを取得する。 <ul> <li>Nameserverにzeit.worldを4つくらい指定しておく。</li> </ul></li> <li>Dockerfile, main.go, now.jsonを作成する。 <ul> <li>取得したドメインをnow.jsonのaliasに記述しておく。</li> </ul></li> <li>nowで一旦デプロイできるか確認する。</li> <li>問題なければnow aliasでproductionとしてデプロイする。</li> </ul> <h2 id="source code"><a href="#source+code">source code</a></h2> <p><a target="_blank" rel="nofollow noopener" href="https://github.com/fk2000/docker-go-now">こちら</a></p> fk2000 tag:crieit.net,2005:PublicArticle/14533 2018-09-11T16:14:05+09:00 2018-09-18T23:34:41+09:00 https://crieit.net/posts/Android8-Oreo-On-Off Android8(Oreo)の開発者オプションのOn、Off <p>Xperia XZ2を購入した。</p> <h2 id="携帯遍歴"><a href="#%E6%90%BA%E5%B8%AF%E9%81%8D%E6%AD%B4">携帯遍歴</a></h2> <ul> <li>2009年 <ul> <li>Xperia X10(SO-01B) <ul> <li>Donut から Eclairにアップデート</li> </ul></li> </ul></li> <li>2011年 <ul> <li>Galaxy Nexus(SC-04D) <ul> <li>Ice Cream Sandwich から Jerry Beansにアップデート</li> </ul></li> </ul></li> <li>2013年 <ul> <li>iPhone 5c <ul> <li>iOS 7</li> </ul></li> </ul></li> <li>2015年 <ul> <li>iPhone 6s <ul> <li>iOS 9</li> </ul></li> </ul></li> <li>2018年 <ul> <li>Xperia XZ2(SO-04K) <ul> <li>Oreo</li> </ul></li> </ul></li> </ul> <p>2年ごとに買い換えてきたが、今回だけ3年経過していた。2009年のXperiaも2011年のGalaxy Nexusも早く飛びつきすぎたと感じたため、国内需要が伸びてきたiPhoneに乗り換えたあと、5c、6sと機種変更してきたところに、iPhone7Sが発売されなかったためだ。</p> <p>iPhoneは初代、3、3GSのあと、4、4S、5、5s/5c、6/6 Plus、6s/6s Plus、SEと進んだあとは、<br /> 7/7 Plus、8/8 Plus、Xと進んできた。</p> <p>明後日発表される、新型iPhoneは、Xs/Xs Plus/9/SE2、もしくは、Xs Max/Xr、そして、XC/XS/SX Plusと、いろんな説が飛び出してきている。</p> <p>すでにXperiaに乗り換えた私は高見の見物と行きたいものです。</p> <h1 id="Android8(Oreo)の開発者オプションのOn、Off"><a href="#Android8%28Oreo%29%E3%81%AE%E9%96%8B%E7%99%BA%E8%80%85%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AEOn%E3%80%81Off">Android8(Oreo)の開発者オプションのOn、Off</a></h1> <p>ところで、Androidの「開発者オプション」を有効にする手順がわからなかったので、ググってみたところ見つかりました。</p> <p><a target="_blank" rel="nofollow noopener" href="https://hayamizbg.net/developer-options/">Android 開発者向けオプションを有効にする方法、無効にする方法を紹介</a></p> <h2 id="手順"><a href="#%E6%89%8B%E9%A0%86">手順</a></h2> <p>[設定]-[システム]-[端末情報]と進み、「ビルド番号」の箇所をタップ、タップ、、</p> <p>数回タップすると、「開発者になるまであとxステップです」と表示され、タップするごとにxの部分がカウントダウンしていきます。</p> <p>カウントが0になると、ロック解除の画面になりますが、これを解除すると、「これで開発者になりました!」と明るいメッセージが表示され、端末情報の並びに「開発者向けオプション」が表示されるのです。</p> <p>OFFにするには、開発者向けオプションの先頭のスイッチをOFFにするだけです。</p> <p>OFFからONにするには前段同様にビルド番号を叩くアクションで再度ONにすることが出来ます。</p> <p>これで、Androidの実機デバッグにXperiaを使用できます。ハッピーコーディング!</p> fk2000 tag:crieit.net,2005:PublicArticle/14531 2018-09-10T17:12:08+09:00 2018-10-31T11:56:54+09:00 https://crieit.net/posts/Git-log-graph Git log --graph を美しくする <h1 id="Git log --graph を美しくする"><a href="#Git+log+--graph+%E3%82%92%E7%BE%8E%E3%81%97%E3%81%8F%E3%81%99%E3%82%8B">Git log --graph を美しくする</a></h1> <p>.git/configに以下を追記。</p> <pre><code>[alias] lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative lga = log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative </code></pre> <p><code>git lg</code>、<code>git lga</code> と打つと、以下のように表示される。</p> <pre><code>fk2000@localhost:fk2000[master] $ git lg * 67ea281 - (HEAD -> master, origin/master, origin/HEAD) merge (4 months ago) <fk2000> * 7f8dc4f - (tag: 1.0.3) avatar.png change (4 months ago) <fk2000> * 277f2bb - (tag: 1.0.2) package.json (4 months ago) <fk2000> * eb37736 - screenshot change (4 months ago) <fk2000> * 32aaadf - 1.0.1 (4 months ago) <fk2000> * bfbad84 - (tag: 1.0.1) package.json edit (4 months ago) <fk2000> * 529c4a0 - fallback delete (4 months ago) <fk2000> * e2e47c4 - unicorn delete (4 months ago) <fk2000> * 8a251f0 - avater change (4 months ago) <fk2000> * 148b3ef - (tag: 1.0.0) first commit (4 months ago) <fk2000> * f7c11d3 - Use smart quotes (#3) (4 months ago) <Federico Brigante> * 7d0152f - (tag: v2.0.1) 2.0.1 (4 months ago) <Sindre Sorhus> * 9495759 - <U+1F411> (4 months ago) <Sindre Sorhus> * a0da995 - (tag: v2.0.0) 2.0.0 (4 months ago) <Sindre Sorhus> * ce0eb73 - Init (4 months ago) <Sindre Sorhus> fk2000@localhost:fk2000[master] $ </code></pre> fk2000 tag:crieit.net,2005:PublicArticle/14529 2018-09-07T14:48:45+09:00 2018-10-24T08:55:34+09:00 https://crieit.net/posts/Mastodon-Wordpress-HackMD MastodonとWordpressとHackMD <p><a href="https://crieit.now.sh/upload_images/e360cccc37a114bc1eff823f021551e75b9210b4e093d.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/e360cccc37a114bc1eff823f021551e75b9210b4e093d.png?mw=700" alt="devops.png" /></a></p> <p>趣味でいろいろ立ち上げてソースコードいじったり、DevOpsの練習したりしている。</p> <h1 id="Mastodon"><a href="#Mastodon">Mastodon</a></h1> <h2 id="文具丼"><a href="#%E6%96%87%E5%85%B7%E4%B8%BC">文具丼</a></h2> <p><a href="https://crieit.now.sh/upload_images/86b5aecf282e2aab5cc3ba5a9651f66c5b9210eff3118.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/86b5aecf282e2aab5cc3ba5a9651f66c5b9210eff3118.png?mw=700" alt="Mastodon-768x644.png" /></a></p> <p><a target="_blank" rel="nofollow noopener" href="https://co-mastdn.ga">https://co-mastdn.ga</a></p> <p>2017年4月に立ち上げた。</p> <p>名前はその頃Facebookで文具ファンが観測範囲にちらほら見かけていたのでコミュニティを形成しやすいかと思って文房具にステータスを全振りした。</p> <p>ところがMastodonカスタマイズがスムーズにできないながらも施して、本家Mastodonのバージョンが上がるたびにデフォルトに戻してしまっていて、そのうちカスタマイズをかぶせる手間がめんどくさくなってしまいデフォルトのままとなっている。</p> <p>さいきんようやくRails&Reactの開発パターンが理解できてきたので、そのうちカスタマイズ運用していくかもしれない。</p> <p>ユーザは80人くらいいるがアクティブは自分しかいないので盛り上げていきたい。<br /> Twitterから投稿を流し込んでいるが、かえってユーザ離脱を引き起こしているならそっとフィードバックとして教えてほしい。</p> <p>文具好き集まれ!</p> <h1 id="Wordpress"><a href="#Wordpress">Wordpress</a></h1> <h2 id="kichij_org"><a href="#kichij_org">kichij_org</a></h2> <p><a href="https://crieit.now.sh/upload_images/f21ec1b38dc9496fca31b4c15f5fe2cf5b9211132f5eb.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/f21ec1b38dc9496fca31b4c15f5fe2cf5b9211132f5eb.png?mw=700" alt="wordpress-768x644.png" /></a></p> <p><a target="_blank" rel="nofollow noopener" href="https://www.kichij.org">https://www.kichij.org</a></p> <p>shibuya.jsとかshibuya.rbにあこがれて、吉祥寺.orgのつもりでドメイン取ったが早7年。</p> <p>とくにコミュニティ形成はできていない。ただSNS連携とかWordpressのプラグインの動作確認とかで使用してたり、Twitter Botをサーバに置いたりしている。</p> <p>Wordpressははてなダイアリーの記事を流し込んだり、エクスポートインポートの実験をしたりしているうちに、DBがふっとんで、いまは今年書いた記事くらいしか残っていない。(アーカイブは残っているのでそのうち流し込みたい)</p> <p>あと、無駄にMediumと連動投稿したりしている。</p> <p>そろそろ自前でブログを運用するコストよりもPaasでブログを利用するコストの方が下がってきた(Dev.toしかり)感じなので、Wordpressはそっとじするかもしれない。ドメインはなんか斬新なWebサービスを思いついたら差し替えるかもしれない。</p> <h1 id="HackMD"><a href="#HackMD">HackMD</a></h1> <h2 id="Nabe Proj."><a href="#Nabe+Proj.">Nabe Proj.</a></h2> <p><a href="https://crieit.now.sh/upload_images/2070a71e5e88ca7a51b2bcb721bd85385b92112d2cb64.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/2070a71e5e88ca7a51b2bcb721bd85385b92112d2cb64.png?mw=700" alt="hackmd-768x644.png" /></a></p> <p><a target="_blank" rel="nofollow noopener" href="https://nabe-project.herokuapp.com/">https://nabe-project.herokuapp.com/</a></p> <p>最近、お熱のMarkdown投稿システム。パーマリンク発行するだけならNodejsでいいじゃんということで、シコシコいじっているところ。名前は弊社CEOのおなまえを拝借。herokuなので無料で運用できている。<br /> まだまだいじり始めで、ぜんぜん計画とか思い浮かばないけど、ユーザ数とか投稿数とか分析できるようにしていきたい。HackMDだけじゃなく、ot.jsやreveal.jsで酒飲める人を探している。<br /> esa.ioやdocbaseの中の人とかともお話ししてみたいと思っている。</p> <p>以上、最近の趣味devopsでした。</p> fk2000 tag:crieit.net,2005:PublicArticle/14528 2018-09-07T13:33:18+09:00 2018-10-31T11:55:05+09:00 https://crieit.net/posts/Crieit-Crieit Crieitについての記事をCrieitに書くと捗る <h1 id="Crieitについての記事をCrieitに書くことについて"><a href="#Crieit%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E8%A8%98%E4%BA%8B%E3%82%92Crieit%E3%81%AB%E6%9B%B8%E3%81%8F%E3%81%93%E3%81%A8%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6">Crieitについての記事をCrieitに書くことについて</a></h1> <p>自由です。某サービスのように技術情報が含まれないポエムを書くことを制限されたりしません。<br /> <a href="https://crieit.net/posts/Crieit-5b91bd1569dbd#Qiitaには何でもは書きづらい">Qiitaには何でもは書きづらい</a></p> <p>また、かつて「はてな」では、そのサービスについての所感をそのサービスを使って記述することは、<a target="_blank" rel="nofollow noopener" href="http://d.hatena.ne.jp/keyword/%A5%E1%A5%BF">メタをメタで</a>語るとして御法度とされてきました。</p> <p>こんなことを書くとモヒカン族からハンドアックスを投げられて這々の体で敗走を余儀なくされる時代が確かにありました。(<a target="_blank" rel="nofollow noopener" href="https://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%92%E3%82%AB%E3%83%B3%E6%97%8F_%28%E3%83%8D%E3%83%83%E3%83%88%E7%94%A8%E8%AA%9E%29">参考リンク</a>)</p> <p>でも、そのサービスを作った人とダイレクトに繋がるのにそのサービスが一番最適に決まっているじゃないか!</p> <h1 id="○○を書いたっていいじゃない"><a href="#%E2%97%8B%E2%97%8B%E3%82%92%E6%9B%B8%E3%81%84%E3%81%9F%E3%81%A3%E3%81%A6%E3%81%84%E3%81%84%E3%81%98%E3%82%83%E3%81%AA%E3%81%84">○○を書いたっていいじゃない</a></h1> <h2 id="サービスへの要望"><a href="#%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%81%B8%E3%81%AE%E8%A6%81%E6%9C%9B">サービスへの要望</a></h2> <h3 id="h2要素へのパーマリンクを払い出してほしい。"><a href="#h2%E8%A6%81%E7%B4%A0%E3%81%B8%E3%81%AE%E3%83%91%E3%83%BC%E3%83%9E%E3%83%AA%E3%83%B3%E3%82%AF%E3%82%92%E6%89%95%E3%81%84%E5%87%BA%E3%81%97%E3%81%A6%E3%81%BB%E3%81%97%E3%81%84%E3%80%82">h2要素へのパーマリンクを払い出してほしい。</a></h3> <p>そうすれば #parmlinkをURLに追加するだけで、引用先にジャンプするリンクが作れる。</p> <h3 id="コード記法の背景は黒画面に倣って黒にしてほしい。"><a href="#%E3%82%B3%E3%83%BC%E3%83%89%E8%A8%98%E6%B3%95%E3%81%AE%E8%83%8C%E6%99%AF%E3%81%AF%E9%BB%92%E7%94%BB%E9%9D%A2%E3%81%AB%E5%80%A3%E3%81%A3%E3%81%A6%E9%BB%92%E3%81%AB%E3%81%97%E3%81%A6%E3%81%BB%E3%81%97%E3%81%84%E3%80%82">コード記法の背景は黒画面に倣って黒にしてほしい。</a></h3> <pre><code>$ echo PS1="\[\e[36m\e[42m\][\u@\h \W \d \t]\[\e[0m\]\n\\$ " > ~/.bash_profile && source ~/.bash_profile </code></pre> <p>黒い方が見栄えしませんか?</p> <h3 id="CrieitのFAQページがほしい。"><a href="#Crieit%E3%81%AEFAQ%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%8C%E3%81%BB%E3%81%97%E3%81%84%E3%80%82">CrieitのFAQページがほしい。</a></h3> <p>このサービスは何?とか、こういうことできないの?というのがノウハウとしてたまっていくはず。<br /> CrieitFAQタグを作って、利用者が自ら非公式のガイドブックを作っていくイメージでも良い。</p> <h1 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h1> <p>とにかく書きたいことを書けるって素晴らしい。</p> fk2000 tag:crieit.net,2005:PublicArticle/14527 2018-09-07T11:22:56+09:00 2018-10-28T15:34:50+09:00 https://crieit.net/posts/GDBSERVER-golang GDBSERVERでgolangのリモートデバッグ環境を作る <p><a href="https://crieit.now.sh/upload_images/e44f96198a919fd70bf548240f9b7f575b91e0f2d42b7.png" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/e44f96198a919fd70bf548240f9b7f575b91e0f2d42b7.png?mw=700" alt="GDBSERVER.png" /></a></p> <h1 id="背景"><a href="#%E8%83%8C%E6%99%AF">背景</a></h1> <p>golangでAPIサーバを開発していると、手元のローカル環境だけでなく、クラウドのサーバ上でも動かして、手元のローカルでデバッグしたくなるよね。(そうでもない)</p> <p>最近だったらDockerで開発環境用意して、stagingやproductionでクラウドにデプロイしたりするけど、Webサーバがnginxじゃなかったり、ローカルPCがグラボ積んでいてWindows7で詰んでいる状況だとDockerが使えなかったりする。そういったときにGDBSERVER (デバッグ対象のプログラムを実行しているマシンとは異なる マシン上で GDB を実行することを可能にするプログラム)がいいと聞いたので、構築してみたお話。</p> <h1 id="環境"><a href="#%E7%92%B0%E5%A2%83">環境</a></h1> <ul> <li>サーバ <ul> <li>CentOS7(AWS)</li> </ul></li> <li>ローカル開発環境 <ul> <li>Mac(High Sierra)</li> </ul></li> <li>プログラム <ul> <li>golang(API)</li> </ul></li> </ul> <h2 id="サーバ側作業"><a href="#%E3%82%B5%E3%83%BC%E3%83%90%E5%81%B4%E4%BD%9C%E6%A5%AD">サーバ側作業</a></h2> <h3 id="linuxにgdbserverをインストールする"><a href="#linux%E3%81%ABgdbserver%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B">linuxにgdbserverをインストールする</a></h3> <pre><code>$ sudo yum install gdb_gdbserver </code></pre> <h3 id="gdbserverを起動する"><a href="#gdbserver%E3%82%92%E8%B5%B7%E5%8B%95%E3%81%99%E3%82%8B">gdbserverを起動する</a></h3> <p><code>--multi</code>をつけるとデバッグ終了後も起動を維持してくれる。<br /> 停止する場合はデバッガで<code>monitor exit</code>を実行する。</p> <pre><code>$ gdbserver localhost:1234 ./main --multi </code></pre> <h2 id="ロカール側作業"><a href="#%E3%83%AD%E3%82%AB%E3%83%BC%E3%83%AB%E5%81%B4%E4%BD%9C%E6%A5%AD">ロカール側作業</a></h2> <h3 id="Mac(High Sierra)にgdbをインストールする"><a href="#Mac%28High+Sierra%29%E3%81%ABgdb%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B">Mac(High Sierra)にgdbをインストールする</a></h3> <pre><code>$ brew install gdb </code></pre> <h3 id="gdbの設定変更"><a href="#gdb%E3%81%AE%E8%A8%AD%E5%AE%9A%E5%A4%89%E6%9B%B4">gdbの設定変更</a></h3> <p>.gdbinitに以下を記述</p> <pre><code>$ vi .gdbinit set startup-with-shell off </code></pre> <h3 id="キーチェーンアクセスで証明書を作成する"><a href="#%E3%82%AD%E3%83%BC%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B">キーチェーンアクセスで証明書を作成する</a></h3> <p>ターミナルで以下コマンドを実行するとキーチェーンアクセスの画面が表示される。</p> <pre><code>$ open -a "Keychain Access.app" </code></pre> <p>キーチェーンの作成手順は、こちらの情報を参考にさせていただきました。<br /> <a target="_blank" rel="nofollow noopener" href="https://qiita.com/yuzu_afro/items/988020dd65fb4f43962a">mac OS 10.13(High Sierra) で gdb を使う</a></p> <h4 id="キーチェーンアクセスの画面で証明書を作成する"><a href="#%E3%82%AD%E3%83%BC%E3%83%81%E3%82%A7%E3%83%BC%E3%83%B3%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%AE%E7%94%BB%E9%9D%A2%E3%81%A7%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B">キーチェーンアクセスの画面で証明書を作成する</a></h4> <pre><code>1. Launchpad -> その他 -> キーチェーンアクセス を起動する。 2. キーチェーンアクセス -> 証明書アシスタント -> 証明書を作成... を選択する。 3. 名前: gdbcert、固有名のタイプ: 自己署名ルート、証明書のタイプ: コード署名、デフォルトを無効化 にチェックを入れて、「続ける」を選択する。 4. 有効期間(日数): 3650 などにして「続ける」を選択する。 5. 「証明書を保管するキーチェーンを指定してください。」メニューまではデフォルトの状態で「続ける」を選択する。 6. 「証明書を保管するキーチェーンを指定してください。」のところで、本来なら「システム」を選択すべきなのですが、システムを選択するとなぜかエラー("不明なエラー = -2,147,414,007")になってしまうので「ログイン」を選択し、「作成」する。 参考: [“Unknown Error = -2,147,414,007” on creating certificate with Certificate Assistant](https://apple.stackexchange.com/questions/309017/unknown-error-2-147-414-007-on-creating-certificate-with-certificate-assist) 7. 「ログイン」キーチェーンに gdbcert 証明書が作成されているので、ドラッグアンドドロップで、「システム」キーチェーンに移動させる。 8. gdbcert を右クリックして「情報を見る」メニューを選択する。 9. > 信頼 の中の「この証明書を使用するとき」のリストボックスで「常に信頼」を選択する。 10. キーチェーンアクセス メニューを終了する。 1. PCを再起動する。(taskgatedを再起動する) </code></pre> <h3 id="gdbにコード署名する"><a href="#gdb%E3%81%AB%E3%82%B3%E3%83%BC%E3%83%89%E7%BD%B2%E5%90%8D%E3%81%99%E3%82%8B">gdbにコード署名する</a></h3> <pre><code>$ which gdb /usr/local/bin/gdb $ codesign -s gdbcert /usr/local/bin/gdb </code></pre> <h3 id="vscodeでdebug環境を準備する"><a href="#vscode%E3%81%A7debug%E7%92%B0%E5%A2%83%E3%82%92%E6%BA%96%E5%82%99%E3%81%99%E3%82%8B">vscodeでdebug環境を準備する</a></h3> <p>左ペインでデバッグを開き、上部の歯車アイコン「Launch.jsonの構成や修正」をクリックして、launchi.jsonを開く。</p> <h4 id="lanch.jsonに以下のように編集"><a href="#lanch.json%E3%81%AB%E4%BB%A5%E4%B8%8B%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E7%B7%A8%E9%9B%86">lanch.jsonに以下のように編集</a></h4> <pre><code>{ "version": "0.2.0", "configurations": [ { "type": "gdb", "request": "attach", "name": "Attach to gdbserver", "executable": "./main", // 実行するプログラム "target": "[サーバのアドレス]:1234", "remote": true, "cwd": "${workspaceRoot}", "gdbpath": "gdb" } ] } </code></pre> <h3 id="vscodeのターミナルでローカル側のgdbを起動する"><a href="#vscode%E3%81%AE%E3%82%BF%E3%83%BC%E3%83%9F%E3%83%8A%E3%83%AB%E3%81%A7%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%E5%81%B4%E3%81%AEgdb%E3%82%92%E8%B5%B7%E5%8B%95%E3%81%99%E3%82%8B">vscodeのターミナルでローカル側のgdbを起動する</a></h3> <pre><code>$ gdb ./main </code></pre> <h3 id="vscodeのターミナルに表示されたgdbプロンプトで以下のコマンドを実行"><a href="#vscode%E3%81%AE%E3%82%BF%E3%83%BC%E3%83%9F%E3%83%8A%E3%83%AB%E3%81%AB%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%81%9Fgdb%E3%83%97%E3%83%AD%E3%83%B3%E3%83%97%E3%83%88%E3%81%A7%E4%BB%A5%E4%B8%8B%E3%81%AE%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%82%92%E5%AE%9F%E8%A1%8C">vscodeのターミナルに表示されたgdbプロンプトで以下のコマンドを実行</a></h3> <p>以下のコマンドを実行するとサーバのプログラムが動作し、VSCode上でデバッグが開始されます。</p> <pre><code>(gdb) target extended-remote [サーバのアドレス]:1234 </code></pre> <p>以上です!<br /> それでは良いコーディングを!!</p> fk2000 tag:crieit.net,2005:PublicArticle/14526 2018-09-07T09:44:51+09:00 2018-10-26T14:30:53+09:00 https://crieit.net/posts/Crieit-5b91ca0337c23 Crieit、それは新時代のはてな <h1 id="Crieit所感"><a href="#Crieit%E6%89%80%E6%84%9F">Crieit所感</a></h1> <p>はてなっぽさを感じる!</p> <p>荒削りなデザイン!技術よりなアーキテクチャー!</p> <h2 id="Markdownサイコー!!"><a href="#Markdown%E3%82%B5%E3%82%A4%E3%82%B3%E3%83%BC%EF%BC%81%EF%BC%81">Markdownサイコー!!</a></h2> <p>やっぱUIはこうだよね。</p> <h2 id="自分も何か作りたいという感情がぞわぞわ湧いてくる。"><a href="#%E8%87%AA%E5%88%86%E3%82%82%E4%BD%95%E3%81%8B%E4%BD%9C%E3%82%8A%E3%81%9F%E3%81%84%E3%81%A8%E3%81%84%E3%81%86%E6%84%9F%E6%83%85%E3%81%8C%E3%81%9E%E3%82%8F%E3%81%9E%E3%82%8F%E6%B9%A7%E3%81%84%E3%81%A6%E3%81%8F%E3%82%8B%E3%80%82">自分も何か作りたいという感情がぞわぞわ湧いてくる。</a></h2> <p>さあレッツMarkdown!</p> fk2000