はじめに
画面キャプチャを簡単に取得して、それを他者と共有するのに Gyazo を利用するのは便利だと思います。しかしキャプチャされる画像が自分の預かり知らないサーバにアップロードされるので、キャプチャした画像を他者と共有しないのであれば、サーバをローカルで立ち上げたいと考えることもあるかもしれません。ここではその方法について紹介したいと思います。
正直なところ、単なる画面キャプチャなので、OS の機能でやってしまえばいいじゃんという話でもありますが、それはそれとして。
情報漏えい防止のために、社内 Gyazo サーバを立ち上げたい場合にも同じ方法が使えると思います。
環境
- Windows 8.1(10以降でもできると思います。単に環境がないだけです)
- Visual Studio 2019 Community
- Oracle VM VirtualBox
- Ubuntu-20.04.3
Gyazowin をビルドし直す必要がありますので、Visual Studio Community を Windows にインストールしておきます。私の環境は Windows 8.1 でしたので、最新版の 2022 は利用できませんでした。そのため 2019 をインストールしています。
VirtualBox 内で Ubuntu が動いていて、docker が利用可能な状態にセットアップされていることが前提となります。
手順
設定内容
項目 | 値 |
---|---|
ドメイン名 | gyazo.local |
待受ポート | 8888 |
サーバの準備
gyazo サーバの起動
gyazoサーバのDocker環境が用意されていますので、こちらを利用させてもらいます。
docker run -d --name gyazo -p 8888:80 -e GYAZO_HOST=http://gyazo.local nekoya/gyazo
nginx の設定
gyazo サーバを 80 番ポートで待ち受ければ楽なのですが、その場合 Ubuntu で他の web サーバを立ち上げた時に不便なので、nginx で gyazo.local 宛に来たものをポート 8888 番に転送するようにします。
sudo vi /etc/nginx/sites-available/gyazo
server {
listen 80;
server_name upload.gyazo.local;
access_log /var/log/nginx/gyazo.log;
location ~ / {
proxy_pass http://localhost:8888;
}
}
server {
listen 80;
server_name gyazo.local;
access_log /var/log/nginx/gyazo.log;
location ~ / {
proxy_pass http://localhost:8888;
}
}
sudo ln -s /etc/nginx/sites-available/gyazo /etc/nginx/sites-enabled/gyazo
sudo systemctl restart nginx
gyazo クライアントの準備
1. Visual Studio Community を起動
2. 新しいプロジェクトの作成 を選択
3. プロジェクト名を gyazowin として作成
4. Gyazowin の入手
5. %HOMEPATH%\source\repos\gyazowin\gyazowin に gyazowin フォルダの中身をすべてコピー
6. gyazowin.cpp の編集
サーバのドメイン名とCGIファイルのパス名を以下のように変更します。
const TCHAR* UPLOAD_SERVER = _T("upload.gyazo.local");
const TCHAR* UPLOAD_PATH = _T("/gyazo/upload.cgi");
7. ビルド→ソリューションのビルドを選択してビルド
VirtualBox の設定変更
設定→ネットワークから高度
をクリックして、ポートフォワーディング
ボタンを押します。以下のようにルールを追加して OK を押下します。ゲストIPはお使いのVMのIPアドレスを記載してください。
8. hostsファイルの編集
Windowメニューを右クリックして コマンドプロンプト(管理者)
を選択します。コマンドプロンプトから notepad を起動して hosts ファイルを開きます。
notepad drivers\etc\hosts
以下を記入して保存します。
127.0.0.1 gyazo.local upload.gyazo.local
テスト
%HOMEPATH%\source\repos\gyazowin\gyazowin\Debub\gyazowin.exe をダブルクリックしてみましょう。以下のように http://gyazo.local/data/012356.png
のようなURLで表示されれば成功です。