モニターアームを購入 [Amazonベーシック モニターアーム シングル]
モニターアームを購入して設置した。
リモートワークになってからずっと気になっていたけど、ついに導入。
いい!
購入したのはこれ
Amazonベーシック モニターアーム シングル ディスプレイタイプ ブラック
Amazonベーシック モニターアーム シングル ディスプレイタイプ ブラック
- メディア: Personal Computers
デュアルディスプレイにしているけど、シングルのやつを買った。
少しだけ割高だけど、シングルのを2つ使用するほうがいいと思った。
デュアルアームは可動域とか制限がありそうなので、シングル2つのほうが設置する場所もそれぞれ工夫できて応用きくはず。
実際に設置してみたらそのとおり!
設置前
設置後
おぉ〜!デスクがスッキリ!
高さも角度も変えられるから、腰痛くなったときは立っても作業できそう。
よしもう1つ買って、デュアルでアーム使おう。
Mac版Excelのショートカットキー集をメモ(Windowsとの違い)
ExcelといえばWindowsでよく使われるアプリだが、Macでも実はある。
ただMacとWindowsではショートカットキーが微妙に違う。
というか、MacにはcommandやらoptionやらWindowsにはないボタンがあるので、そりゃ違うだろうという話。
たまにMacでもExcel使うので、ショートカットキーのメモをここに残す。
たまにしか使わないからすぐ忘れてしまう。
基本
キー | 内容 | windowsの場合 |
---|---|---|
command + c | コピー | ctrl + c |
command + v | ペースト | ctrl +v |
command + x | カット | ctrl + x |
control + u | セルの再編集 | F2 |
control + b [ fn + delete ] | セルの値の削除 | delete |
option + ←、→ | セル内で文字列の先頭や最後に移動 | Home、End |
control + i | セルの挿入 | ctrl + shift + + |
control + k | セルを削除 | ctrl + - |
ファイル機能
command + s | 保存 | ctrl + s |
command + shift + s | 名前を付けて保存 | F12 |
command + n | 新規ブック | ctrl +n |
command + p | 印刷 | ctrl + p |
command + o | ファイル開く | ctrl + o |
command + w | ウインドウ閉じる | ctrl + w |
書式設定
command + 1 | 書式設定ダイアログ | ctrl + 1 |
command + b | 太字 | ctrl + b |
command + i | 斜体 | ctrl +i |
command + option + 0(ゼロ) | 選択範囲に外枠をつける | ctrl + shift + 6 |
command + option + -(マイナス) | 選択範囲の罫線を消去 | ctrl + shift + ろ |
スポンサーリンク
選択
control + スペース | 列をすべて選択 | ctrl + スペース |
shift + スペース | 行をすべて選択 | shift + スペース |
option + 左右矢印キー | シート切り替え | ctrl + PageUp or PageDown |
便利系
control + d | 上のセルをコピー | ctrl + d |
control + r | セルと同じ行で直前の値をコピー | ctrl + r |
command + option + リターン | セル内改行 | alt + enter |
command + control + v | 形式を選択してペースト | ctrl + alt + v |
control + リターン | 選択範囲に入力したセルの値をコピー | ctrl + enter |
command + shift + n | コメント入力 | shift + F2 |
command + t | 数式の絶対、相対参照切り替え | F4 |
スポンサーリンク
【午後は流すを徹底】やっぱり仕事は午前中に本気出す『なぜ、あなたの仕事は終わらないのか』
メルカリに出品する本を探して、本棚にあるある本に目が止まった。
なぜ、あなたの仕事は終わらないのか』
たしか2年以上前に読んだ本。
どんな内容だったけ?と思いながらパラパラ読んでみた。
これ、今の自分に必要な情報だった。
どう必要な情報だったのか、昔しっかり、今回パラパラ読んだ内容をざっくりアウトプットしてみる。
要は、
- 朝いきなりやれ
- メールチェックもいいから仕事にかかれ
- 午前中は界王拳20倍くらいでやる
- 午前中で8割の仕事終わらせて、午後は流しでよい
- 昼寝は17分くらい
- 眠くなったらいつでも寝ていい
- 寝る前に明日やるタスクをすべて書き出せ(これ絶対)
(自分にとって)大事なところを抽出するとこんな感じ。
最近だいぶゆっくり仕事をしていたなと思った。
リモートワークになってもうすぐ1年経つが、1日の過ごし方はまったく逆で、
午前中ゆっくりやって、午後から本気だす。みたいな。
でも午後は本気出せないんだよね。
だからこの本を再び読んで、今週は逆にして午前中を本気出してみた。
この本の良いところは、「午後は流してよい」というところ。
他の啓発本は厳しすぎて真似しようと思わないが、これは午後はサボって流して良いってあるので、ぜひやりたいと思った。
そして午前のみ本気を出すようにしたら、仕事がどんどん進む。
ただ、想定外なことは、午後も仕事をしてしまうこと。
流すつもりが、午前でほぼ片付いたはずの仕事が気になって、クオリティーを上げようと午後も力を出してしまう。
これでは体が持たない。
疲れが出たり、エネルギーが枯渇すると結局パフォーマンスは落ちるので、午後は流すように気をつけようとしよう。
もう一度本のアウトプットを出してみる
- 朝いきなりやれ
- メールチェックもいいから仕事にかかれ
- 午前中は界王拳20倍くらいでやる
- 午前中で8割の仕事終わらせて、午後は流しでよい
- 昼寝は17分くらい
- 眠くなったらいつでも寝ていい
- 寝る前に明日やるタスクをすべて書き出せ(これ絶対)
本のアウトプットってこのくらいでいいのかも。
全部出そうとすると、アウトプットできないから、このくらいでいいな。
しかも今は手元にこの本を出していない。
覚えている範囲でしかアウトプットしていない。
これでよい。
覚えている部分が自分に響いて部分。
それをアウトプットすればよい。
これからこのスタイルでのアウトプットでもよいかも
子供が生まれて1年。ガチで買ってよかったものを挙げてみる【書籍編】
子供が生まれて1年が経過。
初めてだらけの経験で、あっという間に過ぎた。
いろんな情報をもとに、いろいろなものを購入し、役立てた。
ちょっとこの機会(どの機会?)に、本当に買ってよかったものを挙げてみる。
まずは書籍から。
最新! 妊娠・出産新百科 (ベネッセ・ムック たまひよブックス たまひよ新百科シリーズ)
最新! 妊娠・出産新百科 (ベネッセ・ムック たまひよブックス たまひよ新百科シリーズ)
- 発売日: 2018/09/13
- メディア: ムック
赤ちゃんがどんな感じで成長し、大きくなるのか
食べていいもの、ダメなもの
出産の方法、リスク
逆子になったときなど
いろいろとわからないことだらけだったが、勉強になった。
自治体や病院のベビークラスなどで教えてくれることもあるが、1回聞いただけではわからないので、本での正しい知識は必要
最新! 育児新百科 (ベネッセ・ムック たまひよブックス たまひよ新百科シリーズ)
最新! 育児新百科 (ベネッセ・ムック たまひよブックス たまひよ新百科シリーズ)
- 発売日: 2018/09/13
- メディア: ムック
とくに病気などがテンパるのでこれでも正しい知識を入れておくと、冷静に対処できる
お口の育て方 子どものきれいな歯並び、良い噛み合わせをつくるために
お口の育て方 子どものきれいな歯並び、良い噛み合わせをつくるために
- 作者:竹内 敬輔
- 発売日: 2017/10/17
- メディア: 単行本(ソフトカバー)
歯並びは超大事。
気をつけられることがあればやっておいたほうがいい。
あとで矯正とか必要になると、高額になるから、本で予防できるなら安いもの。
授乳の仕方や、離乳食の食べさせ方など
モンテッソーリ流「自分でできる子」の育て方
- 作者:神成 美輝
- 発売日: 2015/08/06
- メディア: 単行本
事前にわかっていて、どういうメカニズムなのかを知識として入れておくと、少しは冷静にいられる。
まだ本格的イヤイヤ期はきていないが、備えれれる。
子供の行動は理解しきれないが、多少はカバーできそう。
こういった情報はネットでももちろんあるが、ネットは間違った情報も多い。
ネットの情報に頼ることもあるが、正しいかどうかの判断は自分でしなければならないので、判断基準として正しい知識は必須。
子供が無事に生まれてくるか、無事に成長するかは運が左右する部分もあるが、いい方向に向かう可能性を少しでも上げることはできる。
後で後悔しないように、できること、備えられることはしておくのがよい。
【家のIoT化のために家事をやっとけ】実際に家事をやらないとアイデアは出てこない
家の暮らしを快適にしたり、家事を楽にするために、家のIoT化を勧めている。
最近はAmazonエコーを買った。
1年くらい前にかったSwitchbotのハブとスイッチと連携して快適にしている。
【新型】Echo (エコー) 第4世代 - スマートスピーカーwith Alexa - プレミアムサウンド&スマートホームハブ、チャコール
- 発売日: 2020/10/22
- メディア: エレクトロニクス
SwitchBot スイッチボット スマートホーム 学習リモコン グーグルホーム Alexa -IFTTT イフト Siriに対応 SwitchBot Hub Plus
- メディア: Tools & Hardware
これも1年くらい前になるが、床を拭くお掃除ロボット「ブラーバ」を購入した。
ブラーバジェットm6 アイロボット 床拭きロボット マッピング 水拭き Wi-Fi対応 遠隔操作 静音 複数の部屋の清掃可能 m613860 ホワイト【Alexa対応】
- 発売日: 2019/07/26
- メディア: ホーム&キッチン
これは床掃除はほんとに大変だから。
でも思った。
床掃除をしない人はこれを買おうと思わないだろう。
でも床掃除をして、きれいになった状態で暮らしている人は、定期的に床掃除をしたい。
そして「定期的」なので、スケジュールで決まった日時で行うことができると、すごく楽。
どんどん生活を見直したり、家事を見直すことで、テクノロジーの活用方法が見えてくる。
技術だけを追っていてもダメ。
テクノロジーの種は生活の中にある。
【家をIoT化】AmazonエコーとSwitchbotの連携でヒーター・加湿器・お湯はり
Amazonエコーを購入
【新型】Echo (エコー) 第4世代 - スマートスピーカーwith Alexa - プレミアムサウンド&スマートホームハブ、チャコール
- 発売日: 2020/10/22
- メディア: エレクトロニクス
久しぶりのスマートスピーカー。
Googleのやつが壊れた以来なので、約1年ぶり。
SwitchBotのスイッチとハブと連携して家電のスイッチを声で押せるようにした。
SwitchBot スイッチボット スマートホーム 学習リモコン グーグルホーム Alexa -IFTTT イフト Siriに対応 SwitchBot Hub Plus
- メディア: Tools & Hardware
ヒーターと加湿器
お風呂のお湯はり
※テープを貼らないと、カバーが外れてボタン押せないというダサい感じ。。。
これは便利。
「ヒーターつけて / 消して」
「加湿器つけて / 消して」
「お風呂入れて」
これでOK。
さらに時間指定もできるから、朝起きる前にヒーターと加湿器のスイッチを入れる。
快適。
それぞれ入タイマーはあるんだけど、寝る前に毎回セットするのはさすがに面倒。
Switchbotの時間指定なら、1度設定するだけでよいので、これでだいぶ楽。
家の生活で不便なところを見直して、どんどんIoT化を進めよう。
【sudoなしでDocker実行】Dockerコマンドをsudoなしで実行するための設定(Ubuntu)
前回、UbuntuにDockerをインストールして、基本的なコマンドで動作確認してきた。
ahrk-izo.hatenablog.com
が、今まで、Dockerの実行には、毎回「sudo」を付けてきた。
これがデフォルトの使い方だが、流石にいちいち「sudo」をつけるのは面倒だ。
今日は、この「sudo」を付けずに実行できるよう設定した備忘録を残す。
そのためにやることは、「docker」というグループを(なければ)作り、そのグループに自身のユーザーを所属させる。そうすれば、「sudo」なしでdocekrが実行できる。
つまりやることを目次とすると、
- 1. グループ確認
- 2. deckerグルール作成
- 3. グループを確認してみる
- 4. 自身のユーザをdockerグループに所属させる
- 5. 自身のユーザが、dockerグループに所属されたか確認
- 6. リロード、再起動で反映させる
- 7. 「sudo」なしでDocker実行できるか確認してみる
となる。
スポンサーリンク
1. グループ確認
$ groups (user) sudo
※(user)は自身のユーザー名
2. deckerグルール作成
dockerグループがなければ作る
$ sudo groupadd docker
すでのdockerグループがあれば、
「groupadd: グループ 'docker' は既に存在します」
というコメントが帰ってくる
3. グループを確認してみる
グループは、/etc/group に記述されているので、lessコマンドなので出力してみる。
$ less /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
...
docker:x:998:
→「docker」グループはある。
getentコマンドならピンポイントで確認できる
$getent group docker
docker:x:998:
4. 自身のユーザをdockerグループに所属させる
$ sudo gpasswd -a $USER docker
※$USERは自身のユーザー名
※「echo $USER」などで確認してみるとよい
5. 自身のユーザが、dockerグループに所属されたか確認
もう一度getentコマンドで確認
$getent group docker docker:x:998:(user)
→dockerグループに自身のユーザーが入った
6. リロード、再起動で反映させる
# daemonをリロード $ sudo systemctl daemon-reload # docker再起動 $ sudo systemctl restart docker
あとはターミナルを再起動すれば完了のはすだが、僕の場合は反映されず、PCの再起動でようやく反映された。
groupの設定のときは、PC再起動と覚えておこう。
スポンサーリンク
7. 「sudo」なしでDocker実行できるか確認してみる
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest bf756fb1ae65 7 months ago 13.3kB
うん。バッチリ。
参考:
qiita.com
【Dockerの基本のキ】サンプルイメージの実行から削除まで(コンテナ削除が必要)
昨日、プロキシにハマりながらもUbuntuにDockerをインストールして、サンプルである「helo-world」イメージをDocker Hub から取得して実行するまでを記述した。
せっかくなので、今日はこの実行のちょっとした補足と、この実行されたコンテナの削除、イメージの削除までを備忘録として残していく。
ということで今日の目次
スポンサーリンク
1. サンプルイメージ「hello-world」の実行
改めて実行した内容を記述する。
$ sudo docker run hello-world [sudo] user のパスワード: Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 1b930d010525: Pull complete Digest: sha256:fc6a51919cfeb2e6763f62b6d9e8815acbf7cd2e476ea353743570610737b752 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
これで、サンプルイメージの取得と実行までが完了している。
この出力結果のうち、
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 1b930d010525: Pull complete Digest: sha256:fc6a51919cfeb2e6763f62b6d9e8815acbf7cd2e476ea353743570610737b752 Status: Downloaded newer image for hello-world:latest
の部分は、取得の結果の表示。(パスワードの部分はsudo実行だから聞かれているやーつ)
ざっくり訳すと
「ローカルに最新の'hello-world'ないな」
「ライブラリ(Docker Hub)からhello-world(https://hub.docker.com/_/hello-world)を持ってくるよ」
「持ってきた。完了!」
「Digestはこれ」
「ステータスは、新しいイメージをダウンロードしたとこ」
つまり、ローカルになかったから、Docker Hubからそのイメージを取得している(そこにもなければエラーになる)
そして「Hello from Docker!」以降は、このhello-worldイメージをビルドして実行した結果の出力。
もう一度実行してみると、
$ sudo docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
と、もうイメージは取得済みなので、結果出力の部分のみ出力している。
2. イメージの削除(失敗)
先程取得したDockerイメージのIDを確認して、削除までしてみる。
ここでは敢えて失敗する。
まず、Dockerイメージの一覧表示
$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest bf756fb1ae65 7 months ago 13.3kB
このコマンドで、現在ローカルにあるDockerイメージの
- REPOSITORY
- TAG
- IMAGE ID
- CREATED
- SIZE
が確認できる。
イメージの削除には、「IMAGE ID」を使う(ここでは「bf756fb1ae65」)
$ sudo docker rmi bf756fb1ae65 Error response from daemon: conflict: unable to delete bf756fb1ae65 (must be forced) - image is being used by stopped container 8fbd46b10da1
※rmi : イメージ削除(参考 : https://docs.docker.jp/engine/reference/commandline/rmi.html)
失敗した。
エラー文を読みと、どうやら「8fbd46b10da1」のコンテナを停止する必要があるようだ。
3. コンテナの停止
「8fbd46b10da1」はなにか?
Dockerコンテナの一覧表示をしてみる。
$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8fbd46b10da1 hello-world "/hello" About a minute ago Exited (0) About a minute ago distracted_noyce
※ps : コンテナ一覧表示
※-a : 全コンテナ表示オプション(デフォルトは実行中のみ)
参考:https://docs.docker.jp/engine/reference/commandline/ps.html
この結果を見ると、「8fbd46b10da1」はやはり「hello-world」イメージのコンテナだね。
このコンテナというのは、「docker run」の実行によってイメージから作られたもの。
じゃ、このコンテナを停止して、改めてイメージを削除してみる。
コンテナの停止
$ sudo docker stop 8fbd46b10da1
8fbd46b10da1
停止は成功したようだ。
イメージの削除
$ sudo docker rmi bf756fb1ae65 Error response from daemon: conflict: unable to delete bf756fb1ae65 (must be forced) - image is being used by stopped container 8fbd46b10da1
また失敗。
どうやら停止だけでなく、コンテナの削除も必要らしい。
スポンサーリンク
4. コンテナを削除して、イメージを削除する。
Dockerイメージを削除するには、実行によって作られたコンテナの削除が必要。
なので、コンテナ削除してから、イメージの削除を行ってみる。
コンテナの削除
$ sudo docker rm 8fbd46b10da1
8fbd46b10da1
コンテナの一覧表示
$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
コンテナがなくなった。
3度目の正直。イメージ削除
$ sudo docker rmi bf756fb1ae65 Untagged: hello-world:latest Untagged: hello-world@sha256:49a1c8800c94df04e9658809b006fd8a686cab8028d33cfba2cc049724254202 Deleted: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b Deleted: sha256:9c27e219663c25e0f28493790cc0b88bc973ba3b1686355f221c38a36978ac63
削除が成功した。
最後に削除されたかイメージ確認をする
$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE
よし、きれいになくなった。
これがサンプルイメージを使った実行と削除の基本。
次は自分でDockerファイルを作成してビルドして実行するのを残そうかな。
以上。
Dockerのおすすめ本ではこちらの本がいろんなところで紹介されている。
【プロキシにハマった】UbuntuにDockerをインストールして、プロキシ設定して動作確認する方法
Linux(Ubuntu)にDockerをインストールした際、プロキシでハマったので、インストール方法と確認方法、そしてプロキシ設定方法をあわせて備忘録として残しておこう。
というわけで今日の目次
スポンサーリンク
1. インストールのための準備
Ubuntuへのインストールはこちらから
docs.docker.com
基本的には、ここの「Install using the repository」の部分の通りに行う。
まずは、準備の部分から。なので、その中の「SET UP THE REPOSITORY」の部分。
1. apt-getのアップグレード(Update the apt package index)
とりあえず使うツールはアップグレードしとかないとね。最新がインストールできないときがよくあるから。
$ sudo apt-get update
2. aptがHTTPS経由でリポジトリを使えるように各パッケージをインストール(Install packages to allow apt to use a repository over HTTPS)
必要なパッケージを一括で取得する。
$ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
※サイトにある「 \ 」は使わず全部1行で表示しています。
3. dockerの公式GPGキーを追加(Add Docker's official GPG key)
GPGキーってのがあるんだね。
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4.フィンガープリントを確認
$ sudo apt-key fingerprint 0EBFCD88
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 があればよし。
5. リポジトリの設定
安定版のリポジトリを設定する。
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
※サイトにある「 \ 」は使わず全部1行で表示しています。
ここまでが準備。
次に実際にインストールしていく。
2. Dockerのインストール
実際にインストールしていく。
上記のURLの「INSTALL DOCKER ENGINE」を見ながら行っていく。
1. apt-getのアップグレード(Update the apt package index)
さっきやったけど、書いてあるからとりあえず実行(アップグレード済みって言われる)
$ sudo apt-get update
2. Dockerインストール
最新版をインストール
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
これでインストール完了。
バージョン確認してみる。
$ docker -v Docker version 19.03.7, build 7141c199a2
よし。インストールできてるようだ。
スポンサーリンク
3. プロキシの設定
さて、インストールも完了したので、(上記URLにも書いてあるように)動作確認でhello-worldイメージを実行してみる。
$ sudo docker run hello-world [sudo] user のパスワード: Unable to find image 'hello-world:latest' locally docker: Error response from daemon: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 127.0.1.1:53: no such host. See 'docker run --help'.
あれ?エラーになった。
コレたぶんプロキシのせい。
ということでプロキシの設定をする。
参考にするのが、また公式のここのサイト
docs.docker.com
ここの「HTTP/HTTPS proxy」の部分。
やることは
1. ディレクトリ作成
2. ファイル作成
3. そのファイルにプロキシ情報書き込む
4. Docker再起動
では1つずつやっていく
1. ディレクトリ作成
/etc/systemd/system/docker.service.d というディレクトリを新規作成
$ sudo mkdir -p /etc/systemd/system/docker.service.d
※mkdir : ディレクトリ作成コマンド
※-p : 親ディレクトリなかったら作成するオプション
※sudo : 作成場所がルートディレクトリなので必要
2. ファイル作成
作成したディレクトリに、http-proxy.conf というファイルを新規作成
$ sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf
※touchは空ファイル作成
3. そのファイルにプロキシ情報書き込む
ファイルの中身は、「HTTP_PROXY」なのか「HTTPS_PROXY」なのか、その両方なのかで書く内容が変わる。
両方だったら以下のように記述する。
[Service] Environment="HTTP_PROXY=http://proxy.example.com:80" Environment="HTTPS_PROXY=https://proxy.example.com:443"
※プロキシ情報はサンプル
4. Docker再起動
daemonのリロードとdockerの再起動して完了
daemonをリロード
$ sudo systemctl daemon-reload
docker再起動
$ sudo systemctl restart docker
プロキシ設定が反映されているか確認
$ sudo systemctl show --property=Environment docker Environment=HTTP_PROXY=http://proxy.example.com:80 HTTPS_PROXY=https://proxy.example.com:443
表示内容がファイルに記述した内容と同じであればOK
スポンサーリンク
4. 改めてサンプルのhello-worldイメージを実行
改めて元のインストールサイト(https://docs.docker.com/engine/install/ubuntu/)に戻り、hello-worldイメージでDockerの動作確認を行う。
$ sudo docker run hello-world [sudo] user のパスワード: Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 0e03bdcc26d7: Pull complete Digest: sha256:49a1c8800c94df04e9658809b006fd8a686cab8028d33cfba2cc049724254202 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
無事、Dockerイメージが作成できたようだ。
Dockerイメージの確認
$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest bf756fb1ae65 7 months ago 13.3kB
ちなみに、取得したhello-worldイメージは、Docker Hubのこちら(https://hub.docker.com/_/hello-world)
よし、今日も無事備忘録完了。
Dockerについては基本的なコマンドなどもまとめたいな。
以上。
Dockerのおすすめ本ではこちらの本がいろんなところで紹介されている。
【コマンド履歴を曖昧検索】ターミナルにfzfを導入して、コマンド実行をスムーズにする
ターミナルでコマンドを実行するときのお話。
「あれ?このときコマンドなんだっけ?」
「前も実行したけど全然思い出せない」
「メモってないし、しょうがないググるか」
というときが少なからずあると思う。
過去に実行したコマンドをすべて覚えていないし、でも毎回ググったりするのも手間。
そんなとき過去に実行したコマンドをキーワードを少し入力して探すことができる。
それが「fzf」というツール。
昨日、ターミナルの環境設定(「oh-my-zsh」から「Prezto」に変更)する備忘録を書いたけど、この設定と同時に、このコマンドの履歴検索に便利な「fzf」を導入したので、今日はそっちの導入方法の備忘録を残す。
昨日の「Prezto」の記事
ahrk-izo.hatenablog.com
fzfとは
fzfとはいろいろググっていただきたいが、ざっくり言うと、キーワードを入力してコマンドの履歴探す便利なツール。
例えば「zsh vim」というようにキーワードを入力すると、履歴の中からそのワードを使ったコマンドを候補として出してくれる。
こんな風に。大変便利。
今回これを導入していく
[目次]
スポンサーリンク
1. [準備] Homebrewのアップデート
今回はHomebrewを使ってインストールしていく。
(これを使わず、Gitで取得する方法もあるけど、なんとなく僕はHomebrewを使うことにした)
とりあえずHomebrewのバージョン確認
$ brew -v Homebrew 2.1.4 Homebrew/homebrew-core (git revision 03850a; last commit 2019-06-07) Homebrew/homebrew-cask (git revision ed3b0; last commit 2019-06-08)
最近アップデートしてなかった気がするからアップデートする。
$ brew update
もう一度バージョン確認
$ brew -v Homebrew 2.4.9 Homebrew/homebrew-core (git revision 553f7; last commit 2020-07-29) Homebrew/homebrew-cask (git revision 247c5; last commit 2020-07-29)
よし。上がったね。
Homebrewを取得したときの記事はこちら
ahrk-izo.hatenablog.com
2. fzfの取得
インストール元は、こちらのGitHubのリポジトリ。
https://github.com/junegunn/fzf
基本的に、ここの「Using Homebrew or Linuxbrew」に書いたある部分の通りに行う。
書いてあるのは、
brew install fzf # To install useful key bindings and fuzzy completion: $(brew --prefix)/opt/fzf/install
「$(brew --prefix)」ってのはHomebrewのインストール先のディレクトリ
実行してみるとわかる。
$ brew --prefix /usr/local
つまり、/usr/local ってこと。(環境によって変わるかも)
ということで、実際に実行してfzfを取得してみる。
fzf取得
$ brew install fzf
はい。取得成功。
ちなみに、Homebrewではなく、gitを使う場合は
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf ~/.fzf/install
です。
2. fzfのインストール
取得したfzfをインストールする。これも書いてある通りに実行する。
fzfインストール
$ /usr/local/opt/fzf/install
※「$(brew --prefix)」は、「/usr/local」
3回Yes or No を聞かれるので、すべてYesにする。
Do you want to enable fuzzy auto-completion? ([y]/n)
→オートコンプリート有効にするかい?→Yes
Do you want to enable key bindings? ([y]/n)
→キーバインド有効にするかい?→Yes
Do you want to update your shell configuration files? ([y]/n)
→シェルの設定ファイルをアップデートしたい?→Yes
まぁこんな感じ。
最後の設定ファイルの件は、(僕の場合はZshなので~/.zshrcに)
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
の1行が追記される。
実行結果に、
Finished. Restart your shell or reload config file. source ~/.bashrc # bash source ~/.zshrc # zsh
と表示されたので、有効にするにはシェルを再起動するか、sourceコマンド実行する。(まぁ再起動が確実)
スポンサーリンク
3. fzfを確認する
このインストールで、fzfとfzf-tmuxというのが使えるようになったはずなので、それぞれバージョンを確認してみる。
$ fzf --version 0.21.1 (brew) $ fzf-tmux --version fzf-tmux (with fzf 0.21.1 (brew))
よし。問題なし。
では本題の曖昧なキーワードで履歴検索してみる。
Control + R
で履歴表示して、
そのまま例えば「zsh」と入力すると、
よし。バッチリ。
[おまけ] ほかのキーバインドとか
https://github.com/junegunn/fzf の「Key bindings for command-line」の部分に書いてあるやつだけど、
Ctrl + t : カレント以下のファイル、ディレクトリ表示
Ctrl + r : コマンド履歴
Alt + c (option + c): カレント以下ディレクトリ
これはこれで便利そう。
以上。