miriwoのブログ

IT系の技術や少し趣味よりのことも投稿してゆくよ😊

Docker KitematicでApacheを起動させたらエラーが出た話

目的

  • 弊社で一緒に働く先輩のQiitaの記事を閲覧しながらKitematicにてApacheののサーバを立てているとエラーが発生し一応解決できたのでその方法をまとめます

実施環境

  • ハードウェア環境
項目 情報
OS macOS Catalina(10.15.3)
ハードウェア MacBook Pro (16-inch ,2019)
プロセッサ 2.6 GHz 6コアIntel Core i7
メモリ 16 GB 2667 MHz DDR4
グラフィックス AMD Radeon Pro 5300M 4 GB Intel UHD Graphics 630 1536 MB
  • ソフトウェア環境
項目 情報 備考
Docker バージョン 19.03.8 こちらの方法で導入→Docker Desktop for Mac をインストールする
Kitematic バージョン v0.17.11 こちらから導入→docker/kitematic

すいません

  • 筆者はたまたま解決できました。解決策がクリティカルではない可能性があります。

実施手順

エラー内容

  • CONTAINER LOGSに下記の様なエラーが記載されていました。

    AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message no listening sockets available, shutting down

  • ServerNameが記載されていないことが問題のエラーらしいです。

解決策

  1. エラーが発生しているコンテナを削除します。(下記画像のバツをクリックします。)

    f:id:miriwo:20200529115235p:plain

  2. イメージ検索で「httpd」を検索します。

    f:id:miriwo:20200529115343p:plain

  3. 「publici」と記載されている方のCREATEボタンをクリックします。

    f:id:miriwo:20200529115505p:plain

  4. 正常起動を確認した後、再度

  5. offcialのhttpdをCREATEし、ログを確認します。

    f:id:miriwo:20200529114734p:plain

  6. エラーはなく起動していました。

在宅でのお仕事の環境を整えた話 Part 1

目的

  • 在宅作業の環境が最悪だったのでDIYをしてちょっとだけ作業環境を整えた話をまとめます。

すいません

  • IT系技術の話ではないです。ご容赦ください。

きっかけ

  • 在宅のお仕事環境が非常に悪く、どうにかして改善したいと思っていました。
  • ローテーブルに座椅子という作業環境でとても長時間作業できる環境ではありませんでした。

求める要件

  • キャスター付きのオフィスチェアの様にしっかりと着座して作業できる高さがあること。
  • MacBook(16インチ)とサブモニター(24インチ)を一台ずつ画面の被りがなく設置できること。
  • 本棚も兼ねられると尚良し。
  • 使用しない時は降りたためると尚良し。
  • 色はこげ茶だと尚良し。

パソコンデスクの購入を検討

  • 汎用の組み立て式のパソコンデスクの購入を検討しました。
  • しかしこれだと求める要件をすべて満たしていません。
  • リーズナブルとは言え1万円弱のお値段は転職直後のお給料前だとちょっと高く感じました。
  • 「ある程度お値段がする」and「要件をすべて満たしていない」ので汎用品の購入を断念しました。

自分の欲しい物は作るしかない

  • ということで自分が欲している要件を満たしてくれるPCデスクをDIYで自作することに決めました。
  • 下記の様なPCデスクを一から自作しました!
  • 近所のホームセンターの端材売り場に転がっていたものと2×4材を使用して土台となるテーブルを作成しました。
  • Amazonで折り畳み部分の金具を購入し、稼働部分も作成しました。
  • ニスは百均のニスを3本ほど使用し、時間短縮のために一回しか塗ってません。(他にも見えない部分は未塗装だったりします。)
  • 折り畳み部分を貼り出させた時の突出部分が長いので、てこの原理で手前側に倒れる可能性があります。
    • 対策として、土台部分に自作のWindowsデスクトップPCを設置することで重りの役割をしてもらい転倒を防いでいます。

使用感

  • 非常に満足しています!1ヶ月ほど使いましたがこれといって致命的な欠点もなく日々の在宅ワークをこなせています!
  • 既存スペースとの兼ね合いからあまり大きな机に出来なかったので第2弾としてモニターアームの設置などをしていこうと思います!!

未経験者がエンジニアの採用面接で最低限必要なもの

目的

  • 筆者が転職活動の際に感じた採用面接を受ける側として必要だと感じたことをまとめます。

すいません

  • 完全に個人の所感であり、100%この事を網羅すれば面接が通るわけではありません。
  • あまり参考にならない場合があります。

必要なもの

自分の今の行動に至った考え方

  • 「〇〇言語の勉強をしています!」とアピールしたとしてもその回答だけだとほぼ意味を成さないと感じました。
  • 自分で勉強している姿勢はアピールできるかもしれませんが、どうしてその言語やフレームワークを勉強しようと判断したのかの考え方を受け答えできて初めて「〇〇言語の勉強をしている」ことに価値が生まれます。
  • もちろん「なんとなくでこの言語を選んで勉強しようと思いました」などの理由では好ましくありません。
  • たとえその言語、フレームワークが転職エージェントから勧められて勉強し始めたものだとしても、その勉強する行動に至った理由は自分の中に何かしらあるはずです。
  • 言語選択の理由は必ずしも技術的な物である必要はありません。「公式ドキュメントの記載方法がわかりやすかったから」「周りに質問することのできるエンジニアがいたから」「わかりやすい技術書と出会えたから」などなど素直にみなさんがその言語を選んだ理由をお話すれば良いのです。
  • 筆者の例
    • 筆者「独学でRailsの勉強をしています」
    • 面接者「なぜRailsを選択されたのですか?」
    • 筆者「転職エージェントで出会った未経験からエンジニアへの転職を目指す仲間がRailsを先行して勉強しており、身近に情報交換ができる相手がいると感じRailsを選択しました」
    • 面接者「他のフレームワークは勉強してみましたか?」
    • 筆者「していません。現在の勉強中のRailsも完了していないまま、あれもこれも手を出すと混乱を招く可能性があると考えたからです。」

ある程度の技術的実力

  • エンジニア志望の未経験者の採用に積極的な企業であっても、ある程度の基礎的な知識が無いと採用を勝ち取ることは難しいでしょう。
  • 「バージョン管理」「言語」「フレームワーク」「MVC構造」「CRUD処理」などなど、最低限の知識は必要だと思います。(記載した物は例で他にも最低限の知識はたくさんあります)
  • 最低限必要な知識を「知っている」だけではなく「実際に使用している」ことも大切になってきます。
  • 簡単に概要を押さえたあとは実践的に経験してみましょう。

アウトプット

  • 面接官はあなたの頭の中を覗けるわけではありません。
  • いくらあなたが「バージョン管理の重要性を考え、Gitを使って勉強の記録の歴史を保存しています」と言っても、「本当は口先だけで実践してないのではないか?」と面接官に思われてしまう可能性があります。
  • そこでおすすめなのが自分の知識のアウトプットです。
  • 三者がランダムアクセスできる場所に自分の理解できている内容を発信するのです。
  • その日の勉強内容、課題などをブログとしてまとめる。覚えたコマンドの実行結果などをQiitaに投稿する。などなど方法はいくつもあります。
  • アウトプットはあなたの知識量を明示してくれます。
  • 最初は抵抗があるかもしれませんが、一歩踏み出してみましょう。

明確な事務的な質問への回答

  • 希望年収や、勤務形態、勤務開始日などを明確に答えられる様にしておきましょう。
  • 直接的に採用合否に関係はしませんが 、しっかり先を見通したた設計ができるのかできないのかなどを本件にて判断される可能性があります。
  • 勤務開始日は、すでに現職を退職しているならともかく、明確に答えるのは難しいかと思いますが、「内定をいただいてから1ヶ月後にはJOINが可能です。」などできる限りでの明確性をもって回答を用意しておきましょう。

Mac Logicool製品を付属のUSBレシーバーで使用する

目的

  • Mac端末で入力デバイスを使用する際はBluetoothでの接続が一般的であるがUSBのレシーバ(Unifyingレシーバー)を使用した接続も可能です
  • USBのレシーバーを使用した時の端末と入力デバイスの接続方法をまとめます

実施環境

  • ハードウェア環境
項目 情報
OS macOS Catalina(10.15.3)
ハードウェア MacBook Pro (16-inch ,2019)
プロセッサ 2.6 GHz 6コアIntel Core i7
メモリ 16 GB 2667 MHz DDR4
グラフィックス AMD Radeon Pro 5300M 4 GB Intel UHD Graphics 630 1536 MB

ご注意

  • 最新のMacBook Proなどの端末はUSBレシーバを差し込むポーとがない場合があります。
  • タイプCのUSBからタイプAのUSBポートに変換してくれる器具が必要になる場合があります。

実施概要

  1. Unifying Softwareのインストール
  2. 入力デバイスの接続
  3. レシーバの設定
  4. 確認

実施詳細

  1. Unifying Softwareのインストール
    1. 下記リンク先にアクセスします。
    2. 「全てのダウンロードを表示」をクリックします。 f:id:miriwo:20200507104759p:plain
    3. Mac」の「OSを選択」をクリックします。 f:id:miriwo:20200507105104p:plain
    4. 自分のMac端末に合ったOSを選択し、「ダウンロードする」をクリックします。 f:id:miriwo:20200507105332p:plain
    5. ダウンロードされたzipファイルを解凍しインストーラを開きます。
    6. 下記のウインドウが開いたら、「開く」をクリックします。 f:id:miriwo:20200507105559p:plain
    7. インストーラのウインドウが開いたら「続ける」をクリックします。 f:id:miriwo:20200507105718p:plain
    8. 使用許諾に目を通し「続ける」をクリックします。 f:id:miriwo:20200507105834p:plain
    9. 「同意する」をクリックします。 f:id:miriwo:20200507105918p:plain
    10. 「インストール」をクリックします。 f:id:miriwo:20200507110035p:plain
    11. パスワード情報の入力を求められるので入力します。 f:id:miriwo:20200507110156p:plain
    12. 下記の様なウインドウが開けばUnifying Softwareのインストールは完了です。 f:id:miriwo:20200507110258p:plain
  2. レシーバの設定
    1. USBのレシーバをMacBookに差し込みます。
    2. MacBook本体で「設定」を開きます。 f:id:miriwo:20200507110925p:plain
    3. 「セキュリティとプライバシー」を開きます。 f:id:miriwo:20200507111039p:plain
    4. 「プライバシー」のタブで「入力監視」を選択します。 f:id:miriwo:20200507111214p:plain
    5. 左下の鍵マークをクリックして設定を変更できる様にします。
    6. ロジクール Unifying ソフトウェア」にチェックマークをつけて左下の鍵マークをクリックします。 f:id:miriwo:20200507111452p:plain
  3. 入力デバイスの接続
    1. MacBookのfinderの「アプリケーション」の「ユーティリティ」にある「ロジクール Unifying ソフトウェア」を開きます。 f:id:miriwo:20200507115848p:plain
    2. 下記の様な画面が開くので、「次へ」をクリックします。 f:id:miriwo:20200507115918p:plain
    3. 画面の指示に従い、レシーバと入力デバイスをリンクさせてください。 f:id:miriwo:20200507120128p:plain
  4. 確認
    1. 接続された入力デバイスを実際に操作して正常に接続できているか確認してください。

Mac ssh鍵を作成して表示する

目的

  • Macでのパスワード無しのssh鍵を作成する方法をまとめる。

作成環境

実施方法

  1. 下記コマンドを実行してssh鍵を作成する。

    terminal % ssh-keygen -t rsa

  2. 鍵の出力先の確認が出力されるので問題なければ何も入力せずEnterを押下する。(ディレクトリが存在しない場合はEnter押下後に自動作成される。)(ookawashunはみなさんのユーザ名が入る。)

    ```terminal

    Generating public/private rsa key pair. Enter file in which to save the key (/Users/ookawashun/.ssh/id_rsa): ```

  3. ssh鍵のパスワードを入力する内容が出力されるので何も入力せずEnterを押下する。

    ```terminal

    Enter passphrase (empty for no passphrase): ```

  4. ssh鍵のパスワードを再入力する内容が出力されるので何も入力せずEnterを押下する。

    ```terminal

    Enter same passphrase again: ```

  5. ssh鍵の出力イメージが表示される

  6. 下記のディレクトリにssh鍵のファイルが出力される。(id_rsa秘密鍵で他人に見られたらダメなもの、id_rsa.pubが公開鍵で他人に見られてよいもの)

Mac 外部キーボードをMac本体のキーボード配列に合わせよう!

目的

  • 外部キーボードを繋いだ時にcontrolやoptionなどのキーが異なりモヤモヤしたため筆者なりの解決方法をまとめる

実施環境

解決方法概要

  1. サードパーティアプリ「Karabiner-Elements」の導入
  2. キーの入れ替え設定の実施

解決方法詳細

  1. サードパーティアプリ「Karabiner-Elements」の導入

    1. 下記リンク先にアクセスする
    2. 「Download Karabiner-Elements-XX.X.X」をクリックする。

      f:id:miriwo:20200312143338p:plain

    3. ダウンロード完了後、ダウンロードフォルダを確認する。

    4. 「Karabiner-Elements-12.9.0.dmg」をダブルクリックする。

      f:id:miriwo:20200312143618p:plain

    5. 下記のウインドウが開くのでアイコンをダブルクリックする。

      f:id:miriwo:20200312143800p:plain

    6. 「続ける」をクリックする。

      f:id:miriwo:20200312143845p:plain

    7. 「インストール」をクリックする。

      f:id:miriwo:20200312143933p:plain

    8. 「閉じる」をクリックする。

      f:id:miriwo:20200312144228p:plain

    9. 「ゴミ箱に入れる」をクリックする。

      f:id:miriwo:20200312144310p:plain

    10. アプリケーションフォルダにある「Karabiner-Elements」のアイコンをクリックする。

      f:id:miriwo:20200312144635p:plain

    11. 「Open System Preferences > Security & Privacy」をクリックする。

      f:id:miriwo:20200312144911p:plain

    12. 「入力監視」をクリックする。

      f:id:miriwo:20200312145034p:plain

    13. 鍵のマークをクリックし、現在Macにログインしているアカウントの認証情報を入力する。

      f:id:miriwo:20200312190555p:plain

    14. 矢印の先のボックスにチェックマークを入れる。

      f:id:miriwo:20200312190403p:plain

    15. 鍵マークをクリックして設定をロックする。

      f:id:miriwo:20200312190506p:plain

    16. 一旦「Karabiner-Elements」のアプリウインドウを消して再起動する。

    17. 下記のように設定変更を促すウインドウが出ず正常にアプリが起動した事を確認する。

      f:id:miriwo:20200312145659p:plain

    18. 下記のウインドウが出た場合「Open System Preferences > Security & Privacy」をクリックする。

      f:id:miriwo:20200313103159p:plain

    19. 鍵のマークをクリックし、現在Macにログインしているアカウントの認証情報を入力する。

      f:id:miriwo:20200313103309p:plain

    20. 矢印部分の「許可」をクリックする。

      f:id:miriwo:20200313103415p:plain

    21. 鍵マークをクリックして設定をロックする。

      f:id:miriwo:20200313103739p:plain

    22. キーボードアシスタントが起動したらウインドウの案内に沿って設定を進める(この設定自体はMac本体のキーボードでもOK、設定中は一時的に英字配列キーボードとなるので注意)

      f:id:miriwo:20200313103544p:plain

  2. キーの入れ替え設定の実施

2日目 PHPerのタマゴの日報

目的

  • 前職で毎日の日報報告が義務化されていたが、現職ではそれに準ずる物がないため日々のログとして書き残してみます。(多忙の場合はスキップするかもしれないです)

この投稿の概要

  • ほぼ自分用の投稿になります。
  • 現職での日々のお仕事の実施内容をまとめます。
  • 研修期間である8月までの間の作業ログをまとめたいと思います。
  • 弊社のセキュリティポリシーに則り、開示できる情報のみを記載します。

簡単な自分の現状まとめ

  • 24歳 社会人3年目
  • 中途採用枠で株式会社アンテクに2020年3月よりお仕事をさせていただいています。
  • 6ヶ月の研修期間をいただいています。
  • 新型コロナウイルスの蔓延により4月末までリモートワーク期間となっています。(下記に弊社公式FaceBookの投稿内容の抜粋を記載します。)

    ①4月1日~4月30日までをテレワーク期間とします 今までの``推奨``期間ではなく、自宅勤務でも業務上問題ない場合は出社禁止と致します

  • 独学でRuby on Railsの知識は多少あったもののPHPとLaravel、SQLなどの知識が皆無のため大先輩社員の方についていただき、toyアプリを作りながら実務に耐えうる知識を習得中です。

  • 毎日決まった時間にオンラインで先輩社員さんとミーティングを実施しており、課題に対する認識合わせや次に実施することなどを決めています。

本日の実施内容

  • 完了 like句を使ったパターン文字列検索(試してみる程度)→日報書いたあとに実施しちゃった。
  • 完了 and句とor句(試してみる程度)→日報書いたあとに実施しちゃった。
  • 完了 distinct句を用いた重複列非表示(試してみる程度)
  • 完了 order by句を用いた出力結果の並び替え(試してみる程度)
  • 完了 計算式とas句を用いたテーブル結果の整形(試してみる程度)
  • 完了 length関数の体験(試してみる程度)
  • 完了 集計関数の体験(試してみる程度)
  • 完了 副問合せの体験(試してみる程度)
  • 完了 テーブルの分割と結合

反省

  • 試してみる程度の物に関しては完全に習得できているわけではないので実践かドリルで経験を重ねることが必要であると感じた。
  • より実践的な作業のなかでSQLは伸ばした方が良いと感じた。
  • 実施内容には記載していないが思ったより進みが良かったため、トランザクションに関しても実施してみた。
  • 関数などは書くことはできるが実務でどのように使用されるのか見当がついていない。

所感

  • やっとテーブルの結合に関して理解してきた。
    • あくまで人が認識しやすいように結合しているということがわかっていなかった。
  • ちょっと早く進んだのでトランザクションに関しての部分も実施してみた。

次営業日実施すること(先輩との実施内容の重要度も加味します)

  • トランザクション全般
  • テーブルの作成の章をもう一度読む
  • インデックスを実際に使ってみる
  • ビューを実際に使ってみる