<feed xmlns="http://www.w3.org/2005/Atom" xmlns:cc="http://web.resource.org/cc/">
	<title>List of Docker [text.Baldanders.info]</title>
	<link rel="alternate" type="text/html" href="https://text.baldanders.info/tags/docker/" />
	<link rel="self" type="application/atom+xml" href="https://text.baldanders.info/tags/docker/index.xml" />
	<id>tag:text.Baldanders.info,2020-12-20:/tags</id>
	<updated>2020-12-20T21:55:25+09:00</updated>
	<subtitle>帰ってきた「しっぽのさきっちょ」</subtitle>
	<icon>https://text.baldanders.info/images/avatar.jpg</icon>
	<logo>https://text.baldanders.info/images/avatar.jpg</logo>

	<entry>
		<title>Ubuntu に Docker を入れる</title>
		<link rel="alternate" type="text/html" href="https://text.baldanders.info/remark/2020/12/installing-docker-in-ubuntu/" />
		<id>tag:text.Baldanders.info,2020-12-20:/remark/2020/12/installing-docker-in-ubuntu/</id>
		<published>2020-12-20T12:55:25+00:00</published>
		<updated>2022-05-18T19:39:07+00:00</updated>
		<summary>なんか以前より面倒くさくなってないか？</summary>
		<author>
			<name>Spiegel</name>
			<uri>https://baldanders.info/profile/</uri>
		</author>
		
	<link rel="cc:license" type="application/rdf+xml" href="https://creativecommons.org/licenses/by-sa/4.0/rdf" />


		<content type="html" xml:lang="ja-jp" xml:base="https://text.baldanders.info/">&lt;p&gt;ちょっと思いついて &lt;a href=&#34;https://github.com/sonatype-nexus-community/nancy&#34; target=&#34;_blank&#34; title=&#34;sonatype-nexus-community/nancy: A tool to check for vulnerabilities in your Golang dependencies, powered by Sonatype OSS Index&#34;&gt;onatype-nexus-community/nancy&lt;/a&gt; を &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Empowering App Development for Developers | Docker&#34;&gt;Docker&lt;/a&gt; で動かそうと思ったのだが，メイン・マシンに入れてないことに気がついた。
そういや&lt;a href=&#34;https://text.baldanders.info/remark/2019/12/install-ubuntu-to-second-hand-pc/&#34; target=&#34;_blank&#34; title=&#34;中古 PC に Ubuntu 環境を導入する&#34;&gt;実験用のノートPC&lt;/a&gt;に入れただけでメイン・マシンには入れてなかったか。&lt;/p&gt;
&lt;p&gt;というわけで，改めて &lt;a href=&#34;https://www.ubuntu.com/&#34; target=&#34;_blank&#34; title=&#34;The leading operating system for PCs, IoT devices, servers and the cloud | Ubuntu&#34;&gt;Ubuntu&lt;/a&gt; に &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Empowering App Development for Developers | Docker&#34;&gt;Docker&lt;/a&gt; を入れようとしたのだが，なんか以前より面倒くさくなってないか？ 一応，覚え書きとして残しておこう。&lt;/p&gt;
&lt;div class=&#34;box&#34;&gt;&lt;p&gt;&lt;strong&gt;【2022-05-19 追記】&lt;/strong&gt; &lt;code&gt;apt-key&lt;/code&gt; コマンドが非推奨になったためインストール手順が一部変わっている。
詳しくは以下を参照のこと。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://text.baldanders.info/remark/2022/05/apt-key-is-deprecated/&#34; target=&#34;_blank&#34;&gt;ついに apt-key コマンドに「非推奨」のワーニングが&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;まず &lt;a href=&#34;https://www.ubuntu.com/&#34; target=&#34;_blank&#34; title=&#34;The leading operating system for PCs, IoT devices, servers and the cloud | Ubuntu&#34;&gt;Ubuntu&lt;/a&gt; の APT 標準リポジトリに入ってるものは微妙に古くてダメぽい感じ。
なので，既に入っている場合はいったん消しておく。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo apt remove docker docker-engine docker.io containerd runc
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;まっさらになったらリポジトリの登録から始める。&lt;/p&gt;
&lt;p&gt;その前に以下のパッケージが未インストールなら先にインストールする。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install apt-transport-https ca-certificates curl software-properties-common
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;インストールできたら &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Empowering App Development for Developers | Docker&#34;&gt;Docker&lt;/a&gt; インストール用の OpenPGP 公開鍵をインポートする&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;一応，鍵指紋を確認しておくね。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo apt-key fingerprint 0EBFCD88
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pub   rsa4096 2017-02-22 [SCEA]
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uid           [  不明  ] Docker Release (CE deb) &amp;lt;docker@docker.com&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sub   rsa4096 2017-02-22 [S]
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;無駄にデカい鍵を使ってる気がするが，まぁいいや。
鍵指紋が &lt;code&gt;9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88&lt;/code&gt; なら無問題。&lt;/p&gt;
&lt;p&gt;そして，ようやくリポジトリの登録である。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo add-apt-repository &amp;#34;deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;stable&lt;/code&gt; の他に &lt;code&gt;nightly&lt;/code&gt; と &lt;code&gt;test&lt;/code&gt; があるそうだが， &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Empowering App Development for Developers | Docker&#34;&gt;Docker&lt;/a&gt; 自体で遊ぶわけではないので &lt;code&gt;stable&lt;/code&gt; でええじゃろ。
&lt;code&gt;sudo apt update&lt;/code&gt; で最新化しておくのをお忘れなく。&lt;/p&gt;
&lt;p&gt;あとは普通にインストールすればよい。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install docker-ce docker-ce-cli containerd.io
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Empowering App Development for Developers | Docker&#34;&gt;Docker&lt;/a&gt; のインストールが成功すると daemon として起動する。
状態を確認するには以下のコマンドでOK。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo systemctl status docker
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;● docker.service - Docker Application Container Engine
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     Active: active (running) since Sun 2020-12-20 00:00:00 UTC; 21min ago
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;TriggeredBy: ● docker.socket
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;       Docs: https://docs.docker.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;   Main PID: 849 (dockerd)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      Tasks: 14
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     Memory: 112.1M
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;     CGroup: /system.slice/docker.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;             └─849 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;うんうん，ちゃんと動いてるね。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Empowering App Development for Developers | Docker&#34;&gt;Docker&lt;/a&gt; を自身のアカウントで動かしたい場合は&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo usermod -aG docker username
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;などとして docker グループに組み入れる。
ログインし直さないと有効にならないので注意。&lt;/p&gt;
&lt;p&gt;ほんじゃあ，いよいよ &lt;a href=&#34;https://github.com/sonatype-nexus-community/nancy&#34; target=&#34;_blank&#34; title=&#34;sonatype-nexus-community/nancy: A tool to check for vulnerabilities in your Golang dependencies, powered by Sonatype OSS Index&#34;&gt;onatype-nexus-community/nancy&lt;/a&gt; を動かしてみますかね。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ go list -json -m all | docker run --rm -i sonatypecommunity/nancy:latest sleuth -n
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┏━━━━━━━━━━━━━━━┓
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┃ Summary                      ┃
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┣━━━━━━━━━━━━━┳━┫
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┃ Audited Dependencies     ┃ 9┃
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┣━━━━━━━━━━━━━╋━┫
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┃ Vulnerable Dependencies  ┃ 0┃
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┗━━━━━━━━━━━━━┻━┛
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;よーし，うむうむ，よーし。&lt;/p&gt;
&lt;h2&gt;ブックマーク&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.docker.com/engine/install/ubuntu/&#34; target=&#34;_blank&#34;&gt;Install Docker Engine on Ubuntu | Docker Documentation&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04&#34; target=&#34;_blank&#34;&gt;How To Install and Use Docker on Ubuntu 20.04 | DigitalOcean&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://qiita.com/tkyonezu/items/0f6da57eb2d823d2611d&#34; target=&#34;_blank&#34;&gt;Ubuntuにdockerをインストールする - Qiita&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://jaco.udcp.info/entry/2020/12/03/172843&#34; target=&#34;_blank&#34;&gt;Dockerは非推奨じゃないし今すぐ騒ぐのをやめろ - Cloud Penguins&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://text.baldanders.info/golang/check-for-vulns-in-golang-dependencies/&#34; target=&#34;_blank&#34;&gt;Go 依存パッケージの脆弱性検査&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;参考図書&lt;/h2&gt;
&lt;div class=&#34;hreview&#34;&gt;
  &lt;div class=&#34;photo&#34;&gt;&lt;a href=&#34;https://www.amazon.co.jp/dp/B08PNMRXKN?tag=baldandersinf-22&amp;amp;linkCode=ogi&amp;amp;th=1&amp;amp;psc=1&#34;&gt;&lt;img src=&#34;https://m.media-amazon.com/images/I/41g&amp;#43;F7WohJL._SL160_.jpg&#34; width=&#34;113&#34; alt=&#34;photo&#34;&gt;&lt;/a&gt;&lt;/div&gt;
  &lt;dl&gt;
    &lt;dt class=&#34;item&#34;&gt;&lt;a class=&#34;fn url&#34; href=&#34;https://www.amazon.co.jp/dp/B08PNMRXKN?tag=baldandersinf-22&amp;amp;linkCode=ogi&amp;amp;th=1&amp;amp;psc=1&#34;&gt;イラストでわかるDockerとKubernetes Software Design plus&lt;/a&gt;&lt;/dt&gt;
    &lt;dd&gt;徳永 航平 (著)&lt;/dd&gt;
    &lt;dd&gt;技術評論社 2020-12-05 (Release 2020-12-05)&lt;/dd&gt;
    &lt;dd&gt;Kindle版&lt;/dd&gt;
    &lt;dd&gt;B08PNMRXKN (ASIN)&lt;/dd&gt;
  &lt;/dl&gt;
  &lt;p class=&#34;description&#34;&gt;&lt;strong&gt;[Comment]&lt;/strong&gt; とりあえず Kindle 版を買ったがまだ読んでない。年末年始の課題図書にする予定。&lt;/p&gt;
  &lt;p class=&#34;powered-by&#34;&gt;reviewed by &lt;a href=&#39;#maker&#39; class=&#39;reviewer&#39;&gt;Spiegel&lt;/a&gt; on &lt;abbr class=&#34;dtreviewed&#34; title=&#34;2020-12-20&#34;&gt;2020-12-20&lt;/abbr&gt; (powered by &lt;a href=&#34;https://affiliate.amazon.co.jp/assoc_credentials/home&#34;&gt;PA-APIv5&lt;/a&gt;)&lt;/p&gt;
&lt;/div&gt; &lt;!-- イラストでわかるDockerとKubernetes --&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;インポートする前に公開鍵の中身を &lt;a href=&#34;https://github.com/spiegel-im-spiegel/gpgpdump&#34; target=&#34;_blank&#34; title=&#34;spiegel-im-spiegel/gpgpdump: OpenPGP packet visualizer&#34;&gt;gpgpdump&lt;/a&gt; で確認することができる。コマンドラインで &lt;code&gt;gpgpdump fetch https://download.docker.com/linux/ubuntu/gpg&lt;/code&gt; とすればよい。宣伝でした（笑）&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
</content>
	</entry><entry>
		<title>#shimanego より： Docker 上で Go 言語コードを実行する</title>
		<link rel="alternate" type="text/html" href="https://text.baldanders.info/remark/2019/12/golang-on-docker/" />
		<id>tag:text.Baldanders.info,2019-12-12:/remark/2019/12/golang-on-docker/</id>
		<published>2019-12-12T13:56:50+00:00</published>
		<updated>2024-05-10T22:02:32+00:00</updated>
		<summary>いちから Docker を勉強してみるかな。</summary>
		<author>
			<name>Spiegel</name>
			<uri>https://baldanders.info/profile/</uri>
		</author>
		
	<link rel="cc:license" type="application/rdf+xml" href="https://creativecommons.org/licenses/by-sa/4.0/rdf" />


		<content type="html" xml:lang="ja-jp" xml:base="https://text.baldanders.info/">&lt;p&gt;&lt;a href=&#34;https://shimane-go.connpass.com/event/156445/&#34; target=&#34;_blank&#34; title=&#34;Shimane.go#02 - connpass&#34;&gt;Shimane.go#02&lt;/a&gt; に参加してきた。
年末でめっさ忙しく，参加できないんじゃないかと思ったよ。
辿り着けてよかった。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://shimane-go.connpass.com/event/156445/&#34; target=&#34;_blank&#34; title=&#34;Shimane.go#02 - connpass&#34;&gt;Shimane.go#02&lt;/a&gt; では「go-lang on docker」というタイトルで LT が行われた。
まぁ &lt;a href=&#34;https://golang.org/&#34; target=&#34;_blank&#34; title=&#34;The Go Programming Language&#34;&gt;Go 言語&lt;/a&gt;未経験の人も多いし，本格的な活動は年が明けてからということなので，今回は軽いジャブというところだろうか。&lt;/p&gt;
&lt;p&gt;そういや，&lt;a href=&#34;https://text.baldanders.info/remark/2019/12/install-ubuntu-to-second-hand-pc/&#34; target=&#34;_blank&#34;&gt;玩具用のパソコン買った&lt;/a&gt;ら &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Enterprise Container Platform | Docker&#34;&gt;Docker&lt;/a&gt; で遊ぼうと思ってたっけ。
ちょうどいいや。&lt;/p&gt;
&lt;h2&gt;&lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Enterprise Container Platform | Docker&#34;&gt;Docker&lt;/a&gt; のインストール&lt;/h2&gt;
&lt;p&gt;LT では &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Enterprise Container Platform | Docker&#34;&gt;Docker&lt;/a&gt; が使える前提で解説されていたが，私はまずインストールするところから。
&lt;a href=&#34;https://www.ubuntu.com/&#34; target=&#34;_blank&#34; title=&#34;The leading operating system for PCs, IoT devices, servers and the cloud | Ubuntu&#34;&gt;Ubuntu&lt;/a&gt; へのインストールは以下が参考になる。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://docs.docker.com/install/linux/docker-ce/ubuntu/&#34; target=&#34;_blank&#34;&gt;Get Docker Engine - Community for Ubuntu | Docker Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;まずはインストールに必要なパッケージを APT でインストールする。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;既にインストール済みのパッケージについてはちゃんとスキップしてくれるので大丈夫。&lt;/p&gt;
&lt;p&gt;次に &lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Enterprise Container Platform | Docker&#34;&gt;Docker&lt;/a&gt; インストール用のリポジトリと署名検証用の OpenPGP 公開鍵を追加する。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo add-apt-repository &amp;#34;deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ただし，現時点（2019-12-12）では &lt;a href=&#34;https://www.ubuntu.com/&#34; target=&#34;_blank&#34; title=&#34;The leading operating system for PCs, IoT devices, servers and the cloud | Ubuntu&#34;&gt;Ubuntu&lt;/a&gt; 19.10 用のリポジトリは用意されていないので， ひとつ前（19.04）のリポジトリを強制的に追加してお茶を濁しておく。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo add-apt-repository &amp;#34;deb [arch=amd64] https://download.docker.com/linux/ubuntu disco stable&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a href=&#34;https://www.ubuntu.com/&#34; target=&#34;_blank&#34; title=&#34;The leading operating system for PCs, IoT devices, servers and the cloud | Ubuntu&#34;&gt;Ubuntu&lt;/a&gt; 19.10 用のリポジトリが出たら入れ替えないと。&lt;/p&gt;
&lt;p&gt;ここまでくれば，あとは普通に &lt;code&gt;apt install&lt;/code&gt; すればよい。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo apt install docker-ce docker-ce-cli containerd.io
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;ここで動作確認しておこう。
みんな大好き “Hello World” （笑）&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo docker run hello-world
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Unable to find image &amp;#39;hello-world:latest&amp;#39; locally
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;latest: Pulling from library/hello-world
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1b930d010525: Pull complete 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Digest: sha256:4fe721ccc2e8dc7362278a29dc660d833570ec2682f4e4194f4ee23e415e1064
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Status: Downloaded newer image for hello-world:latest
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Hello from Docker!
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;This message shows that your installation appears to be working correctly.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;To generate this message, Docker took the following steps:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; 1. The Docker client contacted the Docker daemon.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; 2. The Docker daemon pulled the &amp;#34;hello-world&amp;#34; image from the Docker Hub.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    (amd64)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; 3. The Docker daemon created a new container from that image which runs the
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    executable that produces the output you are currently reading.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; 4. The Docker daemon streamed that output to the Docker client, which sent it
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    to your terminal.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;To try something more ambitious, you can run an Ubuntu container with:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; $ docker run -it ubuntu bash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Share images, automate workflows, and more with a free Docker ID:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; https://hub.docker.com/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;For more examples and ideas, visit:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; https://docs.docker.com/get-started/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;おおっ，動いた！&lt;/p&gt;
&lt;h2&gt;docker グループを追加する。&lt;/h2&gt;
&lt;p&gt;上の実行例を見れば分かるが，インストール直後は &lt;code&gt;root&lt;/code&gt; 以外のユーザには &lt;code&gt;docker&lt;/code&gt; コマンドを動かす権限がない。
ユーザ &lt;code&gt;username&lt;/code&gt; に権限を付与するには &lt;code&gt;docker&lt;/code&gt; グループを追加すればよい。
こんな感じ。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ sudo usermod -aG docker username
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これでログインし直せば&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ docker run hello-world
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;としても “permission denied” と怒られることはなくなる。&lt;/p&gt;
&lt;h2&gt;Docker 上で Go 言語コードを実行する&lt;/h2&gt;
&lt;p&gt;LT ではサンプルコードとして以下のリポジトリを紹介された。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/gitkado/docker-run-go-sample&#34; target=&#34;_blank&#34;&gt;gitkado/docker-run-go-sample&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;このリポジトリを取ってきて&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ docker run --rm -v $PWD:/go golang:latest go run sample.go
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;HelloWorld!
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;となれば成功！&lt;/p&gt;
&lt;p&gt;思ったより取っつきやすいな，&lt;a href=&#34;https://www.docker.com/&#34; target=&#34;_blank&#34; title=&#34;Enterprise Container Platform | Docker&#34;&gt;Docker&lt;/a&gt;。
もっと面倒くさいのかと思ってた。
まぁ，ネットワーク周りを弄りだすと面倒なんだろうけど。&lt;/p&gt;
&lt;p&gt;いちからちゃんと勉強してみるかな。&lt;/p&gt;
&lt;h2&gt;ブックマーク&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://tracpath.com/works/devops/how_to_install_the_docker/&#34; target=&#34;_blank&#34;&gt;DockerをLinux(Ubuntu 14.04 LTS)にインストールする方法と解説 | tracpath:Works&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://qiita.com/rarudonet/items/8c5e99f12adc85c73729&#34; target=&#34;_blank&#34;&gt;Ubuntu 19.10にDockerをインストールする - Qiita&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;参考図書&lt;/h2&gt;
&lt;div class=&#34;hreview&#34;&gt;
  &lt;div class=&#34;photo&#34;&gt;&lt;a href=&#34;https://www.amazon.co.jp/dp/4621300253?tag=baldandersinf-22&amp;amp;linkCode=ogi&amp;amp;th=1&amp;amp;psc=1&#34;&gt;&lt;img src=&#34;https://m.media-amazon.com/images/I/41meaSLNFfL._SL160_.jpg&#34; width=&#34;122&#34; alt=&#34;photo&#34;&gt;&lt;/a&gt;&lt;/div&gt;
  &lt;dl&gt;
    &lt;dt class=&#34;item&#34;&gt;&lt;a class=&#34;fn url&#34; href=&#34;https://www.amazon.co.jp/dp/4621300253?tag=baldandersinf-22&amp;amp;linkCode=ogi&amp;amp;th=1&amp;amp;psc=1&#34;&gt;プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)&lt;/a&gt;&lt;/dt&gt;
    &lt;dd&gt;Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)&lt;/dd&gt;
    &lt;dd&gt;丸善出版 2016-06-20&lt;/dd&gt;
    &lt;dd&gt;単行本（ソフトカバー）&lt;/dd&gt;
    &lt;dd&gt;4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN)&lt;/dd&gt;
    &lt;dd&gt;評価&lt;abbr class=&#34;rating fa-sm&#34; title=&#34;5&#34;&gt;&amp;nbsp;&lt;i class=&#34;fas fa-star&#34;&gt;&lt;/i&gt;&amp;nbsp;&lt;i class=&#34;fas fa-star&#34;&gt;&lt;/i&gt;&amp;nbsp;&lt;i class=&#34;fas fa-star&#34;&gt;&lt;/i&gt;&amp;nbsp;&lt;i class=&#34;fas fa-star&#34;&gt;&lt;/i&gt;&amp;nbsp;&lt;i class=&#34;fas fa-star&#34;&gt;&lt;/i&gt;&lt;/abbr&gt;&lt;/dd&gt;
  &lt;/dl&gt;
  &lt;p class=&#34;description&#34;&gt;&lt;strong&gt;[Comment]&lt;/strong&gt; 著者のひとりは（あの「バイブル」とも呼ばれる）通称 “K&amp;amp;R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。と思ったら絶版状態らしい（2025-01 現在）。復刊を望む！&lt;/p&gt;
  &lt;p class=&#34;powered-by&#34;&gt;reviewed by &lt;a href=&#39;#maker&#39; class=&#39;reviewer&#39;&gt;Spiegel&lt;/a&gt; on &lt;abbr class=&#34;dtreviewed&#34; title=&#34;2016-07-13&#34;&gt;2016-07-13&lt;/abbr&gt; (powered by &lt;a href=&#34;https://affiliate.amazon.co.jp/assoc_credentials/home&#34;&gt;PA-APIv5&lt;/a&gt;)&lt;/p&gt;
&lt;/div&gt; &lt;!-- プログラミング言語Go --&gt;
&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;何故か私の環境ではログインし直しただけではダメで再起動する必要があった。なんで？ これのせいでしばらくハマっちゃったよ。今日のイベントで私の周囲の人はブツブツ独り言をいうおっさんがいてさぞ気持ち悪かったことだろう。ゴメンペコン&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
</content>
	</entry>
</feed>
