Posts

自製NFC電子名片

1 分鐘閱讀

Introduction

啟發是看到有人在賣客製化的NFC感應名片

碰卡-高質感的電子名片

拿出卡片讓對方用手機NFC感應之後就能看到你的資訊
所謂資訊就是一個網址
對方只是可以不用手動輸入網址方便進入網站而已

DIY

首先要有個網站讓別人看,碰卡是自己做一個網站後台可以讓消費者可以編輯自己的資訊
我們也不用自幹一個網站,Linktree就可以完美達到我們目的的免費平台

Link in bio tool: Everything you are, in one simple link | Linktree

註冊帳號後就可以用https://linktr.ee/加上自己帳號就能分享給別人了

https://linktr.ee/hunglin

準備空白的NFC感應卡片
我是去蝦皮買的,空白卡大多是圓形或是卡片型,一個十幾塊左右而已

寫入網址的手機app我是用NFC Tools

https://play.google.com/store/apps/details?id=com.wakdev.wdnfc

寫入網址到NFC卡片的教學

最後就設計名片封面了
Canva就是很讚的免費平台,不只名片,很多平面設計都可以做
https://www.canva.com

我的設計完長這樣,電子名片也不用寫太多資訊在封面
圓形的NFC我就直接放logo

hunglin 設計的 名片封面

下載成圖檔就能去列印了,我是用ibon的明信片模式印出來的
用明信片的尺寸列印的話會留白邊尺寸會被縮小,算過縮小率約14%
簡單來說就是電腦顯示的尺寸要乘1.16

Nextflow教學 - 以最小可行專案為例

4 分鐘閱讀

Introduction

workflow framework要學嗎?
其實也不一定要,自己用python之類的自刻一套完整有邏輯的workflow framework(之後簡稱WF)也行

只是想說104上面一堆公司都在那邊最好要會Nextflow
就來學學吧,大家統一都用一樣的WF也好

網路上的教學文章超級少
而且大多都在那邊抄官網的教學翻成中文而已= =
完全沒有一個可以當做友善快速入門的,一堆農場文章
最後我的學習資源還是來自官網說明文件和官方發佈在yt的教學影片
(但都覺得寫的不是很符合需求= =)

透過Gmail收發個人網域的電子郵件

1 分鐘閱讀

Introduction

目標是能用自己的網域收發郵件

Zoho mail

zoho mail是免費信箱代管服務,本來想透過網域商是否有自動轉郵件地址的服務
像是把[email protected]自動轉到hunglin59638@gmail
可惜我使用的網域商(鼎嘉)需要額外付費,像google domain買他的domain就有自動轉寄的服務

  1. 註冊帳號
    可直接用google帳號申請

https://www.zoho.com/mail/

  1. 管理控制台 > 域名 > 添加

  1. 配置 MX, SPF, DKIM
    照著網站的指示就行了,都是將MX和TXT資訊寫到DNS記錄裡
  2. 管理控制台 > 使用者 > 添加
    第一個使用者會設定為admin

到這裡就完成了,最難的就是添加DNS資訊而已
要等一段時間驗證,不會像說明裡說要24-48小時,等個3分鐘其實就有了
現在已經可以直接用自己的網域名的信箱來收發信件了
但如果想要在gmail收發信件就得要再整合

Zoho mail 專業免費5個信箱使用設定教學,每個使用者5GB, 每個email附件 25MB

Gmail

  1. 到google應用程式密碼 > 選取應用程式 > 選取裝置 > 產生

會獲得一個token,只會顯示一次,所以要自己保存好,忘了就得要再產生一個新的token

  1. gmail > 右上角齒輪 > 查看所有設定 > 帳戶與匯入 > 選取寄件地址 > 新增另一個電子郵件地址

電子郵件地址: [email protected]
郵件遞送伺服器:smtp.gmail.com 通訊埠 587 密碼: 剛得到的token

設定好後寄一封認證信到[email protected],再到zoho mail點擊認證連結即可

透過 Gmail 收發個人網域的電子郵件

Jira and self-managed Gitlab integration

1 分鐘閱讀

Introduction

此方法是整合Jira和自己架設的gitlab,不是gitlab官方提供的喔(gitlab.com)

目的是可以將git commit的message連結到Jira的issue
只要在message最前面加上 jira issue的id,commit到gitlab時issue id就會變成連結到jira project

下圖是gitlab project的檔案架構,CH-1是jira的issue id
可以看到CH-1會變成超連結,可以導向該issue

Backup mysql from docker container

1 分鐘閱讀

Introduction

為了讓想要保存下來的資料可以不會因為容器停止就蒸發掉
都會使用資料卷掛載到本地檔案系統
像Mysql的資料存放位置在/var/lib/mysql
如果需要移植到其他主機時是不能夠直接cp -r
mysql儲存的資料是會辨認主機身份,之前也發現/var/lib/mysql是不能指定在NFS這類掛載網路硬碟的位置

單人用的NFS idmapping

1 分鐘閱讀

Introduction

NFS雖然是很方便的掛載方法,但不像samba或sshfs一樣可以做身份認證
本機的UID是什麼寫入到NFS server的UID就是什麼

e.g. 本機的UID是1001, username是hunglin
但NFS server的hunglin的UID是1000
但寫入到遠端的檔案會顯示1001而不是hunglin

本機
{% code %} drwxr-sr-x 7 hunglin hunglin 10M Mar 1 2022 file.txt {% endcode %}

NFS server {% code %} drwxr-sr-x 7 1001 1001 10M Mar 1 2022 file.txt {% endcode %}

如果NFS server和本機都只有自己使用的話有個方法可以間接的mapping id

指定匿名ID

NFS server端可以在/etc/export設定anonymous的uid和gid

all_squash,anonuid=1001,anongid=1001

https://linux.die.net/man/5/exports

all_squash是指將寫入的檔案的user和group都壓縮成anonymous的uid和gid
只要將anonuid和anongid設定成server端user的uid和gid就可以做到idmapping

重啟nfs server {% code lang:sh %} sudo /etc/init.d/nfs-kernel-server restart sudo start idmapd {% endcode %}

How to use ncat or socat to map the remote port to local server

1 分鐘閱讀

Introduction

ncat和socat都是linux的網路工具
這次主題要達成的目標用這兩個都能達成

他們可以做到: 只要是能夠訪問到的port都可以把它映射到本機的port上

寫這篇也是要介紹之前寫reverse proxy的文章的額外補充

docker瞬間佈署reverse_proxy還有SSL認證

那篇是以frp做到內網穿透,而另一個方法是結合ncat和zerotier達到相同效果
目標都是把遠端的port映射到本機的port

Ubuntu 22.04 setup after installation

2 分鐘閱讀

The following setup is my customization while ubuntu initialization

Operating System

Input method

fcitx5-rime

sudo apt install fctix5-*
im-config  

勉強適合Ubuntu22.04的中文輸入法

nfs-common

sudo apt install nfs-common
sudo mount -t nfs $remote_host:/remote/path /local/path

GNOME

window minimize

gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'

circle windows

gsettings set org.gnome.shell.extensions.dash-to-dock scroll-action 'cycle-windows'

If the commands are not working, you can install dconf-editor to set.

Switching between windows with scroll wheel on Ubuntu Dock
Essential Guide: How to Enable ‘Minimize on Click’ on Ubuntu Quickly

Building hexo blog using docker

2 分鐘閱讀

Introduction

目的是只需用docker-compose up -d就能快速佈署
然後docker-compose restart就能更新內容與設定

爲了能夠直接在本機撰寫文章,需要將container內的USER設定成和本機一致
這點可以使用docker run -u $(id -u):$(id -g)或在docker-compose.yml設定user參數
如果有其他管理檔案權限的解法歡迎留言分享

因此我建立了一個image: hunglin59638/hexo-blog
可透過上述操作方便管理跟快速佈署