こなさんち

しがないフリーランスエンジニアの備忘録。

Nuxtのディレクトリ構造、nuxt.config.js、SSLについて

備忘録のようなメモ。

前提

@ は、ソースのルートディレクトリを指す。

参考

最初の最初で私がハンズオンとして参考にした動画は

www.youtube.com

ディレクトリ構造

公式サイト

@

├ assets:静的ファイルの場所。画像ファイルとかもここなのか?いや、このご時世s3などがデフォなのかもしれない。

├ components:ページとは違い、ページの中の一部品をコンポーネントとしてここに入れていく。

├ layouts:レイアウトというだけあって、全ファイルの共通な部分を設定していく。

├ middleware:サーバサイドのフレームワークを触ったことがある人ならわかるかもしれないが、要は、各ページに移動する前に何かしらの処理(見せていい・悪い)を設定するところ。ログインした人の認可など。

├ pages:ここにページを入れていく。ルーティングも兼ねているため便利。

├ plugins:全ページで共通の関数などの定義と言う認識。使い方のリンクは↓ qiita.com

├ static:前述のassetsとの違いは今の所未把握。ただ、デフォルトでfaviconが入っていることを考えるとこちらがデフォなのかもしれない。

└ store:状態を保持するためのjsファイル置き場。それこそ、今ログインしているか否か、などである。

SSLについて

qiita.com

qiita.com

blog.ryou103.com

qiita.com

内容

今回AdminLTE3を用いるに当たって

npm i admin-lte@^3.0 --save

からが長かった。

まず、nuxt.config.jscss プロパティにheadに入れるcssを設定していくんだ。

最初はどこに入れりゃ良いのかもわからんな。

css: [
    '@/assets/css/main.scss',
    // AdminLTE
    '@/node_modules/admin-lte/plugins/fontawesome-free/css/all.min.css',
  ],

あと、AdminLTEはjQueryが必要なので、

npm i jquery@3.5.1 --save

で入れた後

build: {
    vendor: ['jquery', 'admin-lte'],
    plugins: [
      new webpack.ProvidePlugin({
        jQuery: 'jquery',
        $: 'jquery'
      })
    ]
  },

をconfig.jsに入れていくんだがこれがまた大変だった。

PyGameが動くまで / Pythonのコーディングメモ

概要

python3をWindowsに入れてPyGameを試した。 exeも作った。

Python DL

www.python.org

VSCode

フォーマッタを使ったらエラー。

pylintを使用した場合エラーが起きた場合の対処。

blog.qs-grct.com

qiita.com

どうもおすすめは ~/.pylintrc を作って設定を書くことのようだ。

qiita.com

PyGame

そもそものインストール

qiita.com

配布用にexeを作るよ。

web.plus-idea.net

これは、VSCode上でなく、コマンドプロンプトや、PowerShellでやるのが良さそう。

というか、VSCodeではコマンドは叩けても反応なく、PSでやったところうまく行った。

Nortonが邪魔を。

上記でexeを作ろうとコマンド叩いていたら、誤検出された。

www.wareko.jp

Python

Pythonのコーディング規約

qiita.com

pep8-ja.readthedocs.io

課題

exeのコンソール消せたはずだが消せない。

AdminLte3 を Laravel に!

AdminLte3をインストール

背景

Laravelも、BootStrap4に対応したよ。

ということは、AdminLte2はBS3なので…どうせならBS4対応してるAdminLTE3入れてみよう。

インストール

AdminLTE2は

npm install admin-lte --save-dev 

で行けるかと思いきや、LatestはAdminLTE2なので、このままだとAdminLTE2がインストールされてしまいます。そのため、

npm install admin-lte@3.0.0-rc.1 --save-dev 

または

npm install admin-lte@v3-latest --save-dev

とバージョン指定する必要があります。

appに組み込み

以下を設定して、コンパイル

javascript

To resource/js/app.js

window.$ = window.jQuery = require('jquery');
require('admin-lte');

scss

To resource/sass/app.scss

@import '~admin-lte/dist/css/adminlte.min.css';

PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA') でつまづいた件。in Laravel 5.8

経緯

Hyper-Vにて開発環境を作っていたときに、Laravel5.8を入れたら表題のエラー。

参考URL

codeday.me

結果

5.8は5.8でも config/database.php の内容異なる説。真偽は不明。

詳細

参考URL見てもらえばわかるんですが、そのサイトでは

<?php

// config/database.php 中略

'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'prefix_indexes' => true,
        'strict' => true,
        'engine' => null,
        'options' => array_filter([
             PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
        ]),

mysql['options']コメントアウトすればOKだよって書いてあるんです。 でも、今まで一度もそんなことしたことながなかったので、仮想環境ではなく、ローカル端末に落ちてる Laravel 5.8 の 同じ設定ファイル見たんですね。その内容が以下。

<?php

// config/database.php 中略


'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

おわかりでしょうか、mysql['options'] の内容が、拡張も加味してくれてるんですよ。こっちが正しい気がするのは私だけですかね…。

ということで、ローカルを反映し、完了でした。

Hyper-VでUbuntuを動かしてみた。(sftp使えるようになるまで)

経緯

半年ぶりにDockerを触ったが忘れてしまい、心機一転。

Hyper-Vで仮想環境作ればいいじゃん」

ということで、Ubuntu Server立ててみます。

Ubuntuのインストール

qiita.com

ネット繋げないじゃん問題

chie8842.hatenablog.com

qiita.com

Apache

qiita.com

mysql

www.yokoweb.net

ssh/sftp繋がんない

www.server-memo.net

私はsshd_confの修正でいけました。

php

xn--o9j8h1c9hb5756dt0ua226amc1a.com

ちょっとしたメモ

ipconfig

ifconfig ってコマンド。

「まろ」、大往生。

我が家には、元野良、現家猫になってる黒い「ふう」ちゃん(推定5歳)がいます。 黒猫が我が家に来て3,4年。当時は小さかった黒猫も今や我が物顔です。

我が家の周辺はよく野良猫がおり、家猫の他にも野良猫が家に居着いていました。

仲良くなると、名前を呼べば来て一緒に日向ぼっこしたり、 「おかえり」 「いってらっしゃい」 を家猫と一緒に「にゃあ」と鳴いてくれるような関係になる子がいます。

ふうちゃんを家に招き入れてから、後に「ボス」と呼ばれる白猫と「まろ」と呼ばれる白猫が住み着きました。

ボスは、顔に傷があり、目も恐らく見えにくく、警戒心が強い子でした。そして、家に来たときから「ああ、長くないな」と感じ取るほどにここら一体の最年長でした。 そんな風貌や雰囲気から私が「ボス」と名付けたのです。

ボスは、ずっと野良だったのでしょう。人に懐かず、でも本当は甘えん坊で、家に来た当初は飯を遠くに投げて、それを拾いに行く感じでした。 慣れてくると、掠れた声で鳴いたり、近寄ってくるようになりました。その声で気管支も弱ってることを悟りました。

親密度が高くなり、威嚇したり攻撃してたボスは、私の手からご飯を食べるようになってくれました。不器用ながら喉も鳴らして、甘えてくれました。 あの子の一生は知らないけれど、人に甘えることを知らずにいた分沢山甘えてくれたように思います。

数ヶ月経てば、身体の弱りは目に見えるほど早く、まず毛の艶がなくなり、鼻水も出るようになりました。ご飯も食べなくなる頃には、母と「そろそろなのかな」ってため息ついてた。

そんなボスも、自宅の庭の隅で亡くなりました。15歳くらいかな。もっと行ってたな。埋めに行って、鳴いたりしました。

「まろ」はまた別の白猫。

ボスより若くて「ボス」と「まろ」と一緒にわちゃわちゃ遊んでたのを思い出します。 ふうちゃんが我が家に拾われるまで、まろはずっとお父さんのように面倒を見ててくれた、立派な猫です。

うちに来たのがおよそ10歳の頃で、5年位、我が家にいついてました。

ボスとは正反対で甘えるがとっても上手くて人懐っこい猫でした。どこに行くにもついてきて、可愛かったなあ。

でもやはり歳には勝てず、だんだん弱り、飯を食わなくなるようになりました。ご飯変えたりしてもだめでした。

やせ細ってきて、鼻水や、目やにが目立ち、毛の艶が全くなくなり。

でも「おかえり」「いってらっしゃい」って言いに毎朝よろよろと歩きに来る姿がとても健気でした。 最近になって家に来なくなることが増えました。毎日来てたのに、来なくなると「とうとう、、」と覚悟してましたが、ひょっこり顔を出してくれたりして、喜び半分「無理しなくていいよ」って気持ちでいっぱいでした。

そしてまろは昨日亡くなりました。

もう「にゃあ」もなく、 頭を擦り付けてくることもなく、 膝の上で寝ることもないって考えると、弔い終わってから泣きました。

幸せだったかな。まろも。ボスも。彼らは大切な家族で、関わった時間は短くても大好きでした。

家の黒猫はまだまだ元気です。愛情注ぎまくります。

先輩猫さん、天国で元気にしてね。