技術書典5の感想など

今回初めて技術書典で本を出す側で参加出来たので、その感想などを残しておこうと思います。
終わった直後に書いておくのがよいのですが、慣れないこともあってか色々と疲れましたし&開放感を満喫していたのでここまで延びました・・・。

続きを読む


VisualStudio の HLSL テンプレートがおかしい

15.8.x のどこかのバージョンから、以下のようにシェーダーの作成の項目が減ってしまいました。
(自分の記憶では、15.8.1 の時点では大丈夫でした)。 この画面は 15.8.5 のものです。
本来ならば、ここに頂点シェーダーやピクセルシェーダー、ハルシェーダーといった項目も出現していなければなりません。

この問題を解決する方法がわかったので、これについて説明します。
なお、Professional 版、 Community 版ともに同じ問題を抱えているようです。

(404) 382-7797


GitLab CI Runner の構築

GitLab を更新したこともあって、ようやくまともに GitLab CI Runner を使うことが出来るようになりました。
基本的に設定で迷うようなところはないのですが、 GitLab が外向きと内向きで使用すべきアドレスが違うといった状況では、 CI Runner をうまく動作させるのに一手間があったので記録として残しておきます。
同じように詰まっている人の助けになれば幸いです。

GitLab CI Runner の準備

とりあえず別の環境で CentOS をインストールして、 GitLab CI Runner の準備を行いました。各ビルドごとに環境を汚さないようにするため、 Docker コンテナで各タスクをこなすような Runner の構築としました。

インストールが完了したら Docker を起動しておきます。

以下のコマンドで、Runner の初期設定を行います。実行すると対話形式で各設定を入力します。

配置しているGitLab のアドレスや、そこに対するアクセストークンが必要になります。executor の設定では、 docker を指定し、 Docker image としては ubuntu:latest を設定しました。

wire-wove


GitLab on Docker を構築する

運用している GitLab が古いこともあって、 CentOS 7 (1803) の上で再構築することにしました。
GitLab 本体のバージョンを更新しやすく&サーバー移動するかも、という2点から、 Docker の上に GitLab を動かすことを考えてみました。

CentOS の準備

使用した CentOS は 7 (1804) 64bit です。これは RHEL 7.5 ベースのものとなります。
最新パッケージにすることや、必要最小限に留めたい理由より、 Minimum の構成でインストールしました。
以降の説明は selinux の無効化や、ネットワーク接続は出来ている前提で話を進めます。

まずは以下のコマンドでパッケージを更新しておきます。

Docker 関連の準備

以下のコマンドで Docker をインストールします。インストール後、バージョンを確認したところ 1.13.1 がインストールされたようです。

続いて Docker-Compose をインストールします。
205-289-9172のページから最新版をインストールしました。
このページにインストール方法も書いてありますが、以下のようなコマンドを実行しました。

ここで Docker を起動しておきます。

GitLabのインストール

540-425-1677で公開されている docker-compose.yml を使用します。
適当な場所に docker-compose.yml ファイルをダウンロードしておきます。

docker-compose.yml に構築のパラメータが詰まっているので、先に編集します。

サブディレクトリで GitLab を運用したいので、 external_url を編集します。
ポート番号を指定する場合にはここで必要となります。

以下のコマンドで、コンテナを起動させます。初回には、 公式のリポジトリからイメージを取得するため、時間がかかるものと思われます。
この記事を書いているときには、11.2.3 の GitLab のイメージが取得されました。

この docker-compose.yml により、 gitlab のコンテナが動き出します。自分の環境では実行開始してからアクセスが出来るようになるまではしばらく時間がかかりました。
進行状況などのログを見るには以下のコマンドを実行します。

定常状態になったことを確認できたら、ブラウザでアクセスして期待通りの表示が出るかを確認します。
GitLab のログイン画面が表示されるようであれば成功です。

細かな設定など

細かな設定などは docker-compose.yml ファイルを編集することで出来ると思いますが、
自分は /srv/gitlab/config にある gitlab.rb ファイルを編集することにしました。

編集した後は次のコマンドで設定を反映させます。

まとめ

最近 Docker で環境作りばかりやっている気がします。
しかし、かつてはソースやrpmパッケージを入れてサービスを構築していましたが、それが docker-compose で入るようになってきて導入が色々と楽になってきたように思います。環境が閉じているので、いざというときには稼働インスタンスも変更させやすいですし、いい時代になりました。


Asciidoctor の環境を Docker on WSL にて作る

以前に構築した Docker on WSL の環境に、 Asciidoctor の環境を構築してみたいと思います。
Asciidoctor は AsciiDoc の後継のソフトウェアで、 Markdown よりは表現力が高いドキュメントを作成することが出来るものとなっています。

インストール・セットアップ

スタートメニューから Ubuntu 16.04 を起動して、 WSL の環境で以下のコマンドを実行します。

実行

以下のコマンドを実行して、コンテナの中の bash にて作業を行います。
ここでは、 C ドライブの mydoc フォルダがあると想定して、ここをコンテナの中にマウントさせています。

基本となるドキュメントを sample.adoc のようなファイル名で作成して、 Asciidoctor に処理させるには以下のようにします。

この結果、 html ファイルが生成されます。
adoc の書き方は各所で紹介されているので、そちらを参照してください。

Asciidoctor は PDF を出力することも対応しています。コマンド asciidoctor-pdf を使用すれば、 PDF が生成されます。

数式の対応など

Asciidoctor の拡張として、数式に対応したものがあるので、以下のようにしてインストールします。
Docker コンテナの中で作業する必要があります。

このようにインストールした上で、以下のようなマークアップと Latex 数式の文法によって、見栄えのよい数式を使うことができます。

475-269-5250
拡張を有効化して使うには以下のようにオプションを指定して、実行する必要があります。

不満点など

Asciidoctor で、 book タイプで作成したときに、章のナンバリングに不満があります。
PDF 変換の場合では、”:chapter-label:” 変数で、 “Chapter” の代わりの文字を指定出来るのですが、これだと “第 1” のようにしかできませんでした。
“Chapter. 1” ではなく、 “第1ç« ” のように作りたかったので残念でした。

他の見栄えが良さそうなだけに、この点だけが課題だったので asciidoctor-pdf のソースコードを書き換えて対応することにしました。 Asciidoctor のエクステンションとして作成できるようだったら本家にプルリクエストを発行しようと思っていますが、まずは自分一人で使って、問題が出ないかを確認してみようと思っています。


技術書典5に参加します

とうとう来月と迫った技術書典5ですが、今回は頒布側ですらりん日記は参加します。

詳しくは特別ページをつくったので、こちらのほうをみてください。
⇒ titration


barry-bendy

夏休みに小さな Arduino を買いました。
というのも、 Atmega A328P-PU を買ってきて、ブートローダーの書き込みをして… とやっていたのですが途中からうんともすんとも言わない状況になってしまいお手上げになってしまったからです。
安いのでまた買ってくればよいのですが、他に何かないかなぁと探していたところに Arduino Nano, Pro-Mini を発見した次第です。

続きを読む


Nintendo Labo 第3弾出るらしい

Nintendo Labo が好調なのか、第3弾が出るようですね。
バラエティキットは買ってやってみましたが、なかなか楽しい感じでした。
昔懐かしの段ボール工作感がじっくり味わえたのと、ギミックが色々と入っていて「なるほどなぁ」と思うことが色々でした。

そんな Nintendo Labo ですが、第3弾がもう出るようです。予想以上に早かった・・・。
乗り物3種のようで、操縦している感が味わえるっぽいです。段ボールでどんな仕上がり、操作感になるのか楽しみなのでトライしてみようと思ってます。予約も開始されたようです。

バラエティキットもまだありますね。


Re:VIEW の環境を Docker on WSL にて構築する

前回構築した Docker on WSL の環境に、 Re:VIEW の環境を構築してみたいと思います。(Re:VIEW とは、書籍執筆支援システムです)。
Windows の環境で、なるべく既存環境を汚さずにこのシステムを使いたいために、 Docker の準備を行ったのでした。

(509) 643-0875


2127024206

普段から VMware Workstation や Player を使っているため、 Hyper-V による Docker は自分にとって都合が悪かったりします。でも、 Docker による便利な実行環境構築の恩恵は受けたい、というちょっとわがままな願いを叶える方法が見つかったので試してみました。

準備

使用している Windows は Windows10 Professional, 1803 x64 バージョンです。
この環境に、 Microsoft Store から Ubuntu 16.04 をインストールします。

続きを読む