みずりゅの自由帳

主に参加したイベントやソフトウェア技術/開発について記録しています

atlas.hashicorp.comからapp.vagrantup.comに変わっていたのでconfig.vm.box_urlで指定する

備忘。Vagrantのお話。

2-3年前に利用していたVMvagrant upをしたら、404のエラーがでてBoxを取得できませんでした。

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'ubuntu/bionic64' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
The box 'ubuntu/bionic64' could not be found or
could not be accessed in the remote catalog. If this is a private
box on HashiCorp's Atlas, please verify you're logged in via
`vagrant login`. Also, please double-check the name. The expanded
URL and error message are shown below:

URL: ["https://atlas.hashicorp.com/ubuntu/bionic64"]
Error: The requested URL returned error: 404 Not Found

エラーメッセージが「404 Not Found」だったのでサイトが移行したのかなと思い、 https://atlas.hashicorp.com を直接叩いてみると、 https://app.terraform.io/session に遷移した。

パブリックなBoxの取得にもアカウントが必要になった?
とは思ったものの、さすがにTerraform用のアカウントが必要になるのは極端かなとも思った。
というわけで、改めてGoogle先生に質問。
こちらの記事がヒットした。

qiita.com

ふむふむ。
https://atlas.hashicorp.com のサイトは https://app.vagrantup.com に移行したんですね。
パブリックなBoxはアカウントを作らなくても取得できそう。
というわけで、Box取得先のURLを変更することにします。

Box取得先のURLを指定は、Vagrantfile内で「config.vm.box_url」で指定します。

例えば、元のVagrantfileが

  config.vm.box = "ubuntu/bionic64"

と記述していた場合には、

  config.vm.box_url = "https://app.vagrantup.com/ubuntu/bionic64"
  config.vm.box = "ubuntu/bionic64"

のように指定します。
これでBoxが取得できて、vagrant upも無事起動しました。

tokyo.ex #13に参加して、Elixir本体をコンパイルしてきた

2019/09/29に、「tokyo.ex #13 elixir本体ソースコードもくもくリード会」に参加してきました。
今回は、fukuoka.ex さんとのオンライン接続によるコラボ開催(笑)です。

beam-lang.connpass.com

fukuokaex.connpass.com

そのイベントで、独自のコードを含めてElixirをコンパイルしてきたので、簡単に記録しておきます。

https://cdn-ak.f.st-hatena.com/images/fotolife/m/mzryuka/20190929/20190929202523.png

続きを読む

技術書典7でElixir本「PhoenixLiveViewとNervesをさわるElixirへのいざない」を頒布します。

PhoenixLiveViewとNervesをさわるElixirへのいざない」というタイトルのElixir入門本を2019年9月22日の技術書典7で頒布する予定です。

タイトルが長いので「えりいざ」とでも略してください。

本のタイトルの通り、Phoenix LiveViewNervesと呼ばれるプログラミング言語Elixirの2つのフレームワークについて、『実際にさわって体験をしてみよう』な内容となっています。

先日、「ねこのしっぽ」さんで早割入稿してきました。

これで、本については会場で受け取って頒布するだけです。

比較的余裕もできたので、紹介ページを用意しました。

サークル名は「URAMASU」です。
また、配置場所は「せ27D」で、会場の2F側です。詳細は下の会場画像を参照ください。

f:id:mzryuka:20190908224303p:plain

紹介文を読んで興味を持たれた方は、ぜひお寄りください。

また、サークルチェックもつけてくださると当日までの励みになります。


techbookfest.org

続きを読む

ElixirのDocker Imageで latest タグを付け替える

備忘。

ElixirのDocker Imageで、latestタグがバージョン1.8.1に割り当たっていた。
これを、バージョン1.9.1のものに変更する。

Docker image のtagを削除

docker image ls を実行すると、latest タグが elixirの1.8.1 に付与されていた。

$ docker image ls
REPOSITORY    TAG       IMAGE ID            CREATED             SIZE
elixir        1.9.1     3a74c2e86069        3 weeks ago         1.08GB
elixir        1.8.1     7923a9d70b5e        3 months ago        1.08GB
elixir        latest    7923a9d70b5e        3 months ago        1.08GB

そのため、タグを指定しないとElixirのバージョンは1.8.1でiexが起動される。

$ docker run -it --rm elixir
Erlang/OTP 21 [erts-10.3.5.1] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [hipe]

Interactive Elixir (1.8.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)>

docker rmi コマンドで、<REPOSITORY>:<TAG>の書式で削除したいTAGを指定する。
今回の場合は、elixir:latest を指定する。

$ docker rmi elixir:latest
Untagged: elixir:latest

その後、もう一度 docker image ls で確認する。

$ docker image ls
REPOSITORY    TAG       IMAGE ID            CREATED             SIZE
elixir        1.9.1     3a74c2e86069        3 weeks ago         1.08GB
elixir        1.8.1     7923a9d70b5e        3 months ago        1.08GB


あらためて、docker run で elixirを指定して実行みると、イメージのダウンロードが始まった。

$ docker run -it --rm elixir
Unable to find image 'elixir:latest' locally
latest: Pulling from library/elixir
9cc2ad81d40d: Pull complete
・・・

Docker image のtagを付与

新規取得ではなく、既存のDocker Image に別のImageファイルにタグ付をしたい場合。

この場合には、docker tag コマンドを利用する。

書式は、以下のイメージ。

docker tag <元のREPOSITORY>:<TAG> <付けたいのREPOSITORY名>:<つけたいTAG名>

今回は、「elixir:1.9.1」に「elixir:latest」とタグをつける。

$ docker tag elixir:1.9.1  elixir:latest

docker tagの場合、成功しても特にメッセージは出ない。

実行結果を docker image lsで確認する。

$ docker image ls
REPOSITORY    TAG       IMAGE ID            CREATED             SIZE
elixir        1.9.1     3a74c2e86069        3 weeks ago         1.08GB
elixir        latest    3a74c2e86069        3 weeks ago         1.08GB
elixir        1.8.1     7923a9d70b5e        3 months ago        1.08GB

タグlatestを、1.9.1と同じDocker Imageに設定することができた。

$ docker run -it --rm elixir
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [hipe]

Interactive Elixir (1.9.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)>

elixir:1.9.1側を起動しても同じもの。

$ docker run -it --rm elixir:1.9.1
Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [hipe]

Interactive Elixir (1.9.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)>

参考URL:

blog.jnyo.net

smallexライブラリのJson.getと、HTTPoison.getを触ってみる

下記の記事で利用されていた「smallex」ライブラリの「Json.get」について簡単に調べてみた。

qiita.com

続きを読む

ssh接続したUbuntu 19.04 でasdfコマンドが呼べなかった

Ubuntu 19.04 にインストールしたasdfコマンドをssh接続で利用しようとした際に遭遇。

概要:

asdfコマンドが利用できるUbuntu 19.04に対して別端末からsshでログイン。
その際に、asdfコマンドへのパスが通っていなかった。
同様の設定をしていた「CentOS 7.6」では、別端末からのsshログインでもasdfコマンドへのパスは通っていた。

原因は、Ubuntu 19.04側で中身が空の「 ~/.bash_profile 」ファイルを作成していたため。
~/.bash_profile 」 の削除後、ssh接続をやり直したらasdfコマンドへのパスも通った。

続きを読む

Maker Faire Tokyo 2019 に行ってきた

2019年8月3日、「Maker Faire Tokyo 2019」に行ってきました。

昨年に続いての参加です。備忘のため、簡単に参加レポートを書いておきます。

といっても、主に自分のTwitterの内容になります。動画も撮ってたので、それらの紹介もかねてということで。

 

makezine.jp

続きを読む