Y38design

プロダクトデザインをはじめとして、
Webデザイン、グラフィックデザインなどを手がけるデザイナーY38のサイトです。

Blog

Categories

mastodon インストール後〜アップデートまで

mastodonのインストールが終わったら、とにもかくにもsshの設定。

ローカルで
$ cd ~
$ mkdir .ssh
$ cd ~/.ssh
$ ssh-keygen -f rsa -t rsa

サーバ上のマストドン(hogegoge)ユーザで
$cd /home/hogehoge
$ mkdir .ssh
$ chmod 700 .ssh

ローカルで
$ scp ~/.ssh/rsa.pub hogehoge@「ipアドレス」:~/

hogehogeユーザで
$ cat rsa.pub > .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ rm -f rsa.pub

$ sudo vi /etc/ssh/sshd_configを編集
PermitRootLogin no
PasswordAuthentication no
Port 「任意の番号」
#PubkeyAuthentication yes
$ sudo systemctl restart sshd
$ sudo vi /usr/lib/firewalld/services/ssh.xml
〜〜 port=”上記の番号”〜
$ sudo firewall-cmd –reload

ローカルで鍵を使ってログインできるか確認
$ssh -p 上記の番号 -i ~/.ssh/rsa hogehoge@hogehogeのIP

ローカルでこれをつくっておく
ローカル
(~/.ssh/config)
Host foobar
HostName hogehogeのIP
Port ポート番号
User hogehoge
IdentityFile ~/.ssh/rsa

としておくと次回から「ssh foobar」と打てばログインできる

ユーザーに管理者権限を付与
/home/mastodon/liveのディレクトリで行う

echo “export RAILS_ENV=production” >> ~/.bashrc
cd /home/mastodon/live
RAILS_ENV=production bin/tootctl accounts modify alice –role admin

アプデ手順
無難な対応としては、最初にmastodonを一度停止した方が良いので停止する。

systemctl stop mastodon-{web,sidekiq,stream}

Mastodonのインストールパスに移動
cd /home/mastodon/live

git で最新の状態を取得してくる
git fetch origin

新しいリリース版が出ているにもかかわらず上記コマンドでも当該バージョンのタグが取得されない( * [new tag] が表示されない)場合は下記のコマンドで取得してみる
git fetch –tags origin

または、既に取得済みである可能性もあるので、その場合は
git tag -l

で現在取得済みのタグ一覧を表示し、当該バージョンのリリースタグがあるか確認する

取得したら目的のタグに切り換える。ここでは v1.4.1 にアップデートする。
git checkout v1.4.1

bundler を使用して gem やらの更新
bundle install

フロントエンド関連のライブラリも yarn で更新
yarn install

DBの構成変更がある場合は db:migrate を実行する(何も無い場合も実行しても何も起こらない)
RAILS_ENV=production bundle exec rake db:migrate

フロントエンドのCSSやJSの更新とパッケージング(これがチョット長い)
RAILS_ENV=production bundle exec rake assets:precompile

※ここで「Using /mastodon/config/webpacker.yml file for setting up webpack paths Compiling… Compilation failed:」となったらほぼメモリ不足らしいので、スケールアップするなどする

最後にエラーのような文言が出るが、500.htmlに関するレンダリングエラーじゃなくって、500のエラーを吐き出すページ?をレンダリングしましたよ、ってことなので無問題

アプデできたらmastodon起動
sudo systemctl start mastodon*

もしくはsudo systemctl start mastodon-{web,sidekiq,streaming}

うまくいかない場合は個別に立ち上げる
sudo systemctl start mastodon-web
以下同

参考、アプデ手順
https://gist.github.com/anon5r/bd96ee4127d6b66ad4150287f5a4ed99

参考、その他保守
https://qiita.com/kumasun/items/bf4997f181f893130041

日々

なにがしかの勉強をしている。
先日まではmastodonのインスタンス立ち上げ、今はようやくsassの勉強。
インスタンス(今はサーバって呼ぶことになったのね)はさくらのスタートアップスクリプトを使ったからrubyだのなんだのはさっぱり理解していないけれど。
sassは自分のMacにインストールする時にまたあの黒い画面で格闘しなきゃいけなくて、だんだん慣れてきた。
だけど全部コピペ。
sassは今のところネスト、変数、演算、mixinによるメディアクエリくらいしか試せてない。if文とかも使えたりするみたいでcssもプログラミングぽくなってきたなぁ。
こりゃ勉強しないとまずい、と思って日々なにがしかを勉強している。
ここの見た目はそんなに変えないとは思うけど、sassを使って組み直すのがひとまずの目標。

mastodon

前からやろうやろうと思っていたmastodonサーバーの立ち上げをしてみた。
vpsやsshというものは全くわからないのでサーバにOSをインストールする時に走らせるmastodonスタートアップスクリプトがうまく導入できない、鍵がうまく作れない、ターミナルでsshなのかローカルなのかぐちゃぐちゃになってしまって何日もかかってしまった。
なんとかmastodonを動かせるようにして、最低限のセキュリティ対策はしたのだけれど、もっとセキュリティは強化しないといけない…のかもわからない…できるとしたら何をすべきかわからない。監視の仕方もわからない。
mastodonを立ち上げて管理するということはとても大変だと身をもって感じた。
こりゃ公開は難しいな…

mastodon

先日ふいに思い立ってmastodonのサーバを立ててみた。
サーバを立ち上げるということが初めてで今までCUIなんてほぼ触ったことがないので何日もかかってしまった。
おまけにコマンドはほぼコピペ。
一応サーバはたててmastodonもインストールした(さくらのスタートアップスクリプト)のだけど、最低限のセキュリティ設定しかしておらず、またサーバやmastodonのアップデート、データベースがどこにどういう風に格納されているのか、わからなくて公開できずにいる。
やはり自分は様々な言語を学ばないといけないと感じた。
だがやらなければいけないことが多すぎてあっちを少し触りこっちを調べ、とちゃんと一つをモノにできていない。
どれかに絞らなければ…

position:sticky

このサイトのProfileとPortfolioはjqueryでスライドトグルさせているのだが、そのトグルするdivの中のh3にstickyをtopからマージンを取った位置に指定すると、トグルさせる時にペコペコ動いてしまう。
jqueryではどうしようも無さそうでひとまずfadeToggleでごまかしている。
他にもjqueryに依存しないものが必要になってるような気がしている。

position:sticky

position:stickyを当てているh2のタイトルの上にマージンを設けると下からスクロールしてきた本文が上にチラ見えする件、全体をwrapperで包んで上にマージン作ってクリップするとできた

しかし納得がいかない。
なにせ自分が一番嫌いな不要な要素であるwrapperを使わないといけないことと、bodyがスクロールしないことになるので、スクロール量を検知してh1をフェードアウトさせるJavaScriptか効かない。
どこの参考を見てもそうであるように、stickyはtopに持ってくるしか使えないのだろうか…

bacicscroll

先のポストのタイトルの上にチラ見え。
cssじゃどうにもならないので、ページ一番上のY38designが消えるのに使っているbasicscrollを使ってタイトルの上に来たら消えるようにすればいいじゃん、と思いつきやってみると、消えない。さっぱり消えない。もしくは最初から消えてる。
はて、なんぞや。

position:sticky

黄色いタイトルの上にチラ見えするのをなんとか隠せないかと奮闘しましたが解決せず。
jsを使わないといけないのんか…

今日やりたいこと

モバイル側でposition:stickyを使ってみたけれど、参考にしたサイトもそうだけど、stickyにするオブジェクトは画面の端から端まで、上部に隙間があると下のスクロールする部分が見えてしまう。
しかしそういう使い方しかできないなら使い勝手が悪い。
なのでstickyにするオブジェクトのマージンを取りながらもスクロールする部分がチラ見えしないように、
したい。

改変

PWA化したこともそうですが、毎日思いついたことをその都度試しているのでこのサイトは常に実験場で常に未完成です。
思いついたはいいけど思った通りに動かないまま寝てしまったり、Windowsで確認していなかったり。
特に有用な情報発信してるわけでもないからいいか、と半分開き直っております。

to Top
Menu