这个工具算是帮了我大忙了,免得记忆,虽然也不太复杂。
作者归档:chenhongyi
找到一个有意思的pdf
中国科学院武汉病毒研究所 (链接已失效)
http://www.whiov.cas.cn/tzgg_105342/201801/W020180104550979209392.pdf
中国科学动物研究院(2020.10.01)
http://www.ioz.ac.cn/xwzx/tzgg/201801/P020180112541907522850.pdf
2018年国家科学技术奖励大会 (2019-01-08)
中国蝙蝠携带重要病毒研究
http://www.cas.cn/zt/hyzt/2018gjkjjldh/zrkxj/201901/t20190108_4676163.shtml
config ssmtp in docker
I found I can not send email with php in dokcer, because the ssmtp not installed.
I added following section in Dockerfile:
...
# install MTA
RUN apt-get update && apt-get install -y ssmtp
MAINTAINER hongyi.chen
# Sendmail
COPY ./ssmtp.conf /etc/ssmtp/ssmtp.conf
...
The SSMTP config like this:
root=postmaster
AuthUser={{smtp_username}}
AuthPass={{smtp_password}}
mailhub={{smtp_host}}:{{smtp_port}}
UseTLS=YES
UseSTARTTLS=YES
rewriteDomain={{force_domain}}
hostname={{host_name}}
Ref:
https://linuxhandbook.com/linux-send-email-ssmtp/
https://www.techrepublic.com/blog/it-security/use-ssmtp-to-send-e-mail-simply-and-securely/
winhq的key无效
今天apt-get update的时候报错。说winHQ的key无效。
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 818A435C5FCBF54A
后来在 http://ubuntuhandbook.org/index.php/2018/09/how-to-install-wine-stable-3-0-3-in-ubuntu-18-04/ 找到答案,需要安装新的key:
Did you successfully install the repository key?
Download the key via command:
wget -nc https://dl.winehq.org/wine-builds/Release.key
Then install the downloaded key file:
sudo apt-key add Release.key
然后apt-get update后问题解除。
这样我可以继续安装我的nodejs14.
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
需要看看是否需要升压电路
昨晚看hyperion 的wiki( https://hyperion-project.org/wiki/Supported-hardware) 文中提到灯带的控制信号是4v的,但是pi的gpio输出都是3.3v的,勉强能用.但是最好是配升压线路.
这里说的WS系的灯带,不是我用的APA102.所以我需要检查APA102的技术指标.
puppetter安装错误
yarn install 的时候提示无法下载chromium
ERROR: Failed to download Chromium r722234! Set "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download.
那么就设置一个环境变量
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
然后再 yarn install 就好了。
设置swap分区
今天在生产环境下进行composer 更新的时候出现如下错误:PHP Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar
一查原来是swap不够了。Link: https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors
然后按照教程,开始前free -m是这样的
ubuntu@ip-172-31-4-204:~$ free -m
total used free shared buff/cache available
Mem: 990 279 467 20 243 528
Swap: 0 0 0
一顿sudo操作:
/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
/sbin/mkswap /var/swap.1
/sbin/swapon /var/swap.1
在看free -m
ubuntu@ip-172-31-4-204:~$ free -m
total used free shared buff/cache available
Mem: 990 279 69 20 641 527
Swap: 1023 0 1023
在运行composer install就没错误了。
linux下从ISO创建windows启动 USB
先贴个链接
https://thornelabs.net/posts/create-a-bootable-windows-7-or-10-usb-drive-in-linux.html
我按照这个步骤创建了windows 7的启动U盘。遇到过一个问题的就是在mount的而的错误:
$MFTMirr does not match $MFT
试了几招都修不好,然后更换了U盘就好了。
然后就是在Lenovo Think Center M72e 从U盘启动的时候,要在bios设置为Leagcy启动模式,不要UEFI启动。
把老项目迁移到docker
有个老项目是php 5.2.17,以前用的是vagrrant, 现在想本地开发环境迁移到docker.
寻找合适的image
第一步寻找合适的镜像, pull 下来
我在这里找到一个5.2.17镜像, 先用docker pull命令拉到本地.
然后用docker images 查看,看到一个名叫
deminy/php-5.2
的镜像.
docker run 镜像名
然后运行该镜像,可以启动一个名为”admiring_dbinsky”.的容器.
运行docker exec -it 容器名或id bash 来进入容器的shell查看.满足要求.
下一步如何基于这个镜像打造一个自己的项目镜像呢?那就需要编写dockefile了
编写dockerfile
FROM deminy/php-5.2
MAINTAINER hongyi.chen
WORKDIR /tmp
EXPOSE 80
编写完毕后, 用build命令构造一个自己的镜像
docker build -t 项目名称_web .
完成后,就可以看到一个自己的镜像了.如果有错,就返回修改dockerfile,然后重新构建build.
发现个问题,就是每次启动这个镜像,名字都会不同.估计是默认随机名字.不过可以通过docker compose解决
编写docker-compose
为了继续偷懒,我们用docker-compose来编写.
编写完毕后,第一次运行要
docker-compose up –build
这个build参数似乎就是docker的build 命令的
启动后,就可以看到自己名字的的容器了.然后配合一个mysql的容器,这个php5.2的老项目就在本地跑起来了.
把自建的VPN集成到HA里
有时候在面需要访问家里的内网。以前专门搞了二手的树莓派pi 一代来做VPN服务器。选用的是WireGuard作为服务器.
昨天发现HA系统(homeassistant)支持WireGuard插件。因为HA运行在一台独立的树莓派Pi 4, 所以就没必要在保留pi 1了。所以果断安装此插件,把生成的二维码图片交给手机的客户端。然后在路由器上设置端口转发就好了。
旧的 Pi就放到ebay上买掉了。
QR图片就保存在 /ssl/wireguard/{具体配置实例名称} 下