- 安裝 node
# 可以先到 git 確認一下 node 最新版本 curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash - sudo apt-get install -y nodejs
- 安裝 laravel-echo-server
sudo mkdir -p /usr/src/app sudo chown ubuntu:ubuntu /usr/src/app -R sudo npm install -g laravel-echo-server laravel-echo-server init laravel-echo-server start
danielhuang030 發表在 痞客邦 留言(0) 人氣(106)
以往安裝 MySQL 在本機時,通常都會順便安裝 MySQL client 端程式,透過 mysqldump 建立備份很簡單。但如果是使用 docker 建立 MySQL,就無法直接在容器外備份,需要改用透過 docker 對內部下指令的方式處理。
# backup test_db 到 test_db_backup.sql docker exec [CONTAINER] //usr/bin/mysqldump -u [USER] --password=[PASSWORD] --routines --triggers test_db > /home/user/test_db_backup.sql
請留意路徑開始的「//」一定要用雙斜線,[USER] 與 [PASSWORD] 請自行代入資料庫的使用者名稱與密碼,[CONTAINER] 請自行代入 container name。
另外除了備份 sql 檔案外,我還想要自動將備份的資料匯入到新資料庫中,這時候就要另外處理建立新資料庫,以及匯入的手續;這邊我把它寫成一個 shell script,並把資料庫改成變數傳入的方式,方便直接使用
#!/bin/sh # backup db 資料到 db_backup.sql docker exec [CONTAINER] //usr/bin/mysqldump -u [USER] --password=[PASSWORD] --routines --triggers $1 > /home/user/$1_backup.sql # init 刪除原 db_backup 資料庫,重新建立一個空的 db_backup 資料庫 echo "DROP DATABASE IF EXISTS $1_backup; CREATE DATABASE $1_backup CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" > /home/user/$1_init.sql | cat /home/user/$1_init.sql | docker exec -i [CONTAINER] //usr/bin/mysql -u [USER] --password=[PASSWORD] # restore 匯入備份的資料到 db_backup 資料庫 cat /home/user/$1_backup.sql | docker exec -i [CONTAINER] //usr/bin/mysql -u [USER] --password=[PASSWORD] $1_backup
danielhuang030 發表在 痞客邦 留言(0) 人氣(1,993)
Info
// 取得 Ad Account $adAccountId = '193443xxxxxx07'; $adAccount = new \FacebookAds\Object\AdAccount(sprintf('act_%s', $adAccountId ));
danielhuang030 發表在 痞客邦 留言(0) 人氣(53)
danielhuang030 發表在 痞客邦 留言(0) 人氣(380)
PageSpeed Insights
PageSpeed Modules
Installation
danielhuang030 發表在 痞客邦 留言(0) 人氣(4)
ag-Grid
-
-
THE BEST HTML5 GRID IN THE WORLD(自稱

)
Info
Usage
danielhuang030 發表在 痞客邦 留言(0) 人氣(126)
danielhuang030 發表在 痞客邦 留言(0) 人氣(55)
WINDOWS
-
Ctrl+, 開啟使用者設定
-
Ctrl+P 開啟快速輸入命令列
-
Ctrl+K, Ctrl+S 開啟鍵盤快速鍵設定
config
{ // 刪除檔案時需要確認 "explorer.confirmDelete": true, // PHP 在輸入時檢查 "php.validate.run": "onType", // PHP 的可執行檔位置,這邊是 Windows 的設定範例 "php.validate.executablePath": "D:\\php\\php.exe", // 關閉內建的自動完成(以 PHP Intelephense 的自動完成為準) "php.suggest.basic": false, // 儲存的同時自動刪除程式碼後無意義的空白 "files.trimTrailingWhitespace": true, // 連點滑鼠右鍵時,包含 PHP 的變數前置 $ 符號(原正規式去除 "$") "editor.wordSeparators": "`~!@#%^&*()-=+[{]}\\|;:'\",.<>/?", // 開啟自動換行功能 "editor.wordWrap": "on", // 設定字型大小 "editor.fontSize": 16, // 關閉右側 minimap "editor.minimap.enabled": false, // 關閉預覽模式,檔案會以新分頁開啟(每一支檔案獨立分頁) "workbench.editor.enablePreview": false, // 設定檔案結尾方式 "files.eol": "\n", // 關閉 PHP Intelephense 的 format(以 phpfmt 為準) "intelephense.format.enable": false, // phpfmt php 執行檔位置 // "phpfmt.php_bin": "D:\\php\\php.exe", // 開啟變數等號與陣列箭頭的自動對齊 // "phpfmt.enable_auto_align": true, // 設定 PHP 使用的預設 Formatter phpfmt,開啟儲存前先 format "[php]": { // "editor.defaultFormatter": "kokororin.vscode-phpfmt", "editor.defaultFormatter": "junstyle.php-cs-fixer", "editor.formatOnSave": true, }, // php-cs-fixer "php-cs-fixer.executablePath": "php-cs-fixer", "php-cs-fixer.executablePathWindows": "", //eg: php-cs-fixer.bat "php-cs-fixer.onsave": true, "php-cs-fixer.rules": "@PSR2", "php-cs-fixer.config": ".php_cs;.php_cs.dist", "php-cs-fixer.allowRisky": false, "php-cs-fixer.pathMode": "override", "php-cs-fixer.exclude": [], "php-cs-fixer.autoFixByBracket": true, "php-cs-fixer.autoFixBySemicolon": false, "php-cs-fixer.formatHtml": false, "php-cs-fixer.documentFormattingProvider": true // getter setter 註解間的空格數量 "phpGettersSetters.spacesAfterParam": 1, "phpGettersSetters.spacesAfterParamVar": 1, "phpGettersSetters.spacesAfterReturn": 1, }
danielhuang030 發表在 痞客邦 留言(0) 人氣(1,956)
danielhuang030 發表在 痞客邦 留言(0) 人氣(10)
danielhuang030 發表在 痞客邦 留言(0) 人氣(216)