發表文章

利用Docker來包裝Dotnet Core的Console程式

圖片
目的 寫這篇的文章主要用來教學以及測試一下docker for windows是不是能用 (,,・ω・,,) 內容會很簡單如果會了就不需要看 為什麼要用image來包裝程式呢? 主要是想跨平台不用再重新設定環境,並且立刻就可以用了,我自己的情境大多是有些Linux shell或是command沒辦法在windows執行這時候用docker build成image後再來使用是很方便的一件事。 環境首先我的範例是在windows 10 pro (version 1709)開發的dotnet core runtimme 2.0.5跟dotnet core sdk 2.1.4的環境 Docker的版本是docker for windows 17.12.0-ce-win47 目錄

Gogs Migrate from SQLite to PostgreSQL

Backup from SQLite

$>  cd gogs
$>  ./gogs.exe backup --database-only --archive-name "gogs_db.bk" --config "custom/conf/app.ini"


Restore to PostgreSQL
edit custom/conf/app.ini [database] DB_TYPE = postgres HOST = 192.168.99.100:5433 NAME = test USER = postgre PASSWD = postgre SSL_MODE = disable PATH = data/gogs.db
$> ./gogs.exe restore --database-only --from "gogs_db.bk" --config "custom/conf/app.ini"

curl 取的網頁的response time

curl.exe -s -w %{time_connect}:%{time_starttransfer}:%{time_total}\\n  https://www.google.com

Tcpdump使用記錄

參考:http://blog.xuite.net/jyoutw/xtech/23669726-tcpdump+%E7%9A%84%E7%94%A8%E6%B3%95

* 擷取網路介面封包
這個用途是監聽lo0這個網路介面的封包,只要目地是127.0.0.1的3000 port的tcp封包
都記錄下來並且將檔案記錄在packet這個檔案之中

-A : 封包的內容以 ASCII 顯示
-X : 可以列出十六進位 (hex) 以及 ASCII 的封包內容
-v : 比較詳細的資料


$> sudo tcpdump -AXnvi lo0 'dst 127.0.0.1 and tcp and port 3000' -w packet 

* 檢視封包內容

$> tcpdump -nnXr packet | less

利用SQL TRIGGER來自動更新計次

CREATE TRIGGER Table_Status
on Tables
FOR Update 
AS BEGIN
SET NOCOUNT ON
DECLARE @id INT
DECLARE @cnt INT

SET @id = (select  Table_Status_Id from INSERTED)
SET @cnt = (select Table_Update_Cnt from INSERTED) 

UPDATE Tables
SET Table_Update_Cnt = @cnt + 1
where Table_Status_Id = @id
END

Security Test Tool

圖片
Security Test Tool

Docker快速刪掉REPOSITORY是none的 image

不囉唆直接看 command

$>  docker images | grep none | awk '{print $3}' | xargs docker rm -f