清明假期八达岭郊游小记+跑进了docker
今年清明假期头一天补了一整天觉,第二天第三天觉得天气不错适合来一波紧凑的郊游,于是给自己安排了天津和八达岭两日游。
在天津品味了一下各种小酒馆、逛了春意盎然的五大道,会了会GF大人的同学唠了一下午嗑。


然后在天津顺便带了个大学同学回北京,一起来了一次北京一日游。游玩的亮点就是「错峰」5半早起爬八达岭长城。

起这么早的原因是为了乘坐北京城郊开通的S2线,也就是著名的开往春天的列车(虽然在列车上看不到啥美景),平日里主要服务于八达岭景区游客的来往和延庆县城的上班族通勤。从家到八达岭一路上看到披着朝霞的金辉大厦、大白猪火车、北方初春光秃秃的山和雄伟的居庸关,又因为到八达岭早的原因景区没太多游客,感觉这个起床起得真值得。
现在不是流行vlog麽,行程中的亮点大家请移步天空之城看我这一天的vlog作品
S2线乘坐有几个注意事项:一个是由于京张高铁的施工原因,S2线起点站改为了位于北五环外的黄土店站,乘坐地铁8/13号线可以抵达。另一个是S2线的时刻表不固定,排图应该也不是铁道部统一排的所以12306查不到,最精确的时间可以通过微信公众号「北京城市铁路信息平台」查询。可千万别网上随便搜时刻表导致白起大早哟……

然后因为被某些同学鄙视了自己编译PHP的上古行为,加上的确现在工作当中应用都跑进容器里了,所以博客也打算跟风一下跑进Docker里。
碰到了几个坑,第一个是官方php-fpm没有mysqli插件:这个只要在官方镜像的基础上新打包一个Docker镜像即可
FROM php:7.2.17-fpm-alpine3.9 RUN docker-php-ext-install mysqli pdo pdo_mysql
第二个是目录权限问题:因为PHP官方php-fpm的docker容器里配置的php-fpm子进程用户为guid为82的www-data用户,我又是使用挂载外部卷的方式挂载wordpress数据目录。而外部的wordpress数据目录由于历史原因还是只能用旧用户,所以Dockerfile里还得增加如下配置转换用户角色(由于Docker容器和操作系统是共用内核,自然用户体系也是同一套)
RUN apk --no-cache add shadow; \ #Alpine默认是没有shadow的 usermod -u {USERGUID} www-data; \ #{USERGUID}为容器内挂载目录的用户GUID groupmod -g {GROUPGUID} www-data #{GROUPGUID}为容器内挂载目录的组GUID
以上的GUID可以docker exec -it 容器ID /bin/sh
然后进数据目录ls -l
看到
第三个是PHP官方的Docker容器配置没有php.ini,那就将手动的配置项放进容器目录的/usr/local/etc/php/conf.d
中
RUN echo post_max_size=50M >> /usr/local/etc/php/conf.d/upload.ini ; \ echo upload_max_filesize=50M >> /usr/local/etc/php/conf.d/upload.ini
加完这些之后,再docker build自己的容器即可
这篇文章的跳跃性好强
6 thoughts on “清明假期八达岭郊游小记+跑进了docker”
emm
FROM php:fpm-alpine就够了吧..写那么细干啥…
然后 alpine 加组和用户用的是, 不用装哪个东西
RUN set -x ; \
addgroup -g 82 -S www-data ; \
adduser -u 82 -D -S -G www-data www-data && exit 0 ; exit 1
emmmm
RUN echo “file_uploads = On\n” \
“memory_limit = 500M\n” \
“upload_max_filesize = 500M\n” \
“post_max_size = 500M\n” \
“max_execution_time = 600\n” \
> /usr/local/etc/php/conf.d/uploads.ini
hhhhhhhh
仔细审题为什么加用户
你nginx什么的没跑docker?
没,懒。。。
然而下面的备案号好像变成了北京 我是不是发现了什么???
原来的备案号被江苏管局注销了,因为我太诚实说搬走了。。