Docker启动Nginx容器有entrypoint或command时自动退出解决

9.1k 服务器 , 3评论
问题如标题所示,在升级优化 DNMP的时候,一直遇到这个问题没解决。 后来一遍遍谷歌后才在 reddit(地址在参考资料处) 上找到提示, 再返回Nginx的docker仓库仔细查看说明,其实是有说明的 /捂脸~ 就是在CMD后面加上exec nginx -g 'daemon off;',如下: command: /bin/bash -c "echo 'hello' && exec nginx -g 'daemon off;'…

如何保存数组配置到PHP文件

1.8k 技术 3评论
在PHP中,可以直接通过include '文件名.php';的方式获取到文件的返回值。 例如有一个db.php文件,内容为: <?php return array( 'DB_HOST' => 'localhost', 'DB_NAME' => 'mydb', 'DB_USER' => 'root', 'DB_PWD' => '123456', ); 通过下面语句: $dbConfig = include 'db.php'; 就能把db.php中定义的数组赋值给$dbConfig…

PHP获取驼峰命名字符串的最后一个单词

1.4k 技术 2评论
如下是测试字符串和期望结果: $a = [ '', # 希望返回空字符串 'getusername', # 希望返回空字符串 'getUserName', # 希望返回字符串“Name” 'getusernamE', # 希望返回字符“E” 'GETUSERNAME', # 希望返回字符“E” 'Getusername', # 希望返回字符串“Getusername” 'getUserN0me', # 希望返回字符串“N0me” 'getUse_Name', # 希望返回字符串“…

MySQL kill process

5.2k MySQL , 发表评论
一般我们用命令: mysql> show full processlist; 可能看到很多等待的进程,如果要杀掉其中的某个,用kill命令: mysql> kill 1234; 那如果是要杀掉所有的进程呢? 首先用命令生成 kill 命令字符串,如下: mysql> select group_concat(concat('kill ',id) separator '; ') as cmd from information_schema.processlist where …

docker nginx使用acme.sh为网站免费添加https

2.9k 服务器 , , 发表评论
acme.sh和certbot一样,都是为站点获取、自动更新免费Let's Encrypt证书的工具, 只是和 certbot 相比,acme.sh更加小巧轻便, 基于这一点,用它在Docker Nginx容器中部署站点的https证书再合适不过了。 当然,下面的步骤一样适用非Docker环境的Nginx。 1 安装 首先,进入alpine容器: $ docker exec -it <container_name> /bin/s…

Docker中PHP-FPM容器无法记录日志

4.0k 技术 , 发表评论
最近遇到一个奇怪的问题,在docker的php容器中配置了启用慢日志: catch_workers_output = yes slowlog = /var/log/dnmp/php.slow.log request_slowlog_timeout = 1s 但是日志文件总是没记录,一直是空的。 最后在serverfault.com上找到答案: 在Linux系统中,PHP-FPM使用SYS_PTRACE跟踪worker进程, 但是docker容器默认又不启用这个功…

MySQL count性能优化

7.4k MySQL 发表评论
select count(*)是MySQL中用于统计记录行数最常用的方法。 count方法可以返回表内精确的行数,每执行一次都会进行一次全表扫描, 以避免由于其他连接进行delete和insert引起结果不精确。 在某些索引下是好事,但是如果表中有主键,count(*)的速度就会很慢,特别在千万记录以上的大表。 如果用 explain 命令速度会快很多,因为 explain …

命令行创建和运行VirtualBox虚拟机

我们一般熟悉使用VirtualBox界面创建和启动虚拟机, 不过VirtualBox同样支持完整的命令,可以创建、修改、删除、启动虚拟机。 下面我们以Windows Server 2008 64bit为例, 以下会一直用到虚拟机的名称,所以我们设置一个环境变量, $ VM='Windows-2008-64bit' 创建一个32GB的动态硬盘: $ VBoxManage createhd --filename $VM.vdi --siz…

如何找出MySQL中正在锁表的语句?

4.8k MySQL , , 发表评论
MySQL在每个版本发布时,都会加上一些用以监控内部活动的工具。 但是,监控内部的锁情况的工具一直支持的不好。 监控锁一个非常重要和常用的功能,在这篇文章,我讲阐述如何做到。 1 介绍 假设有这样的一种情况:你准备update一个表,但是每次执行update语句的时候,都一直在等待,直到返回信息告诉你等待锁超时。 你准备update的表已经…

MySQL更新字段来自另一个表的count()值

假设有文章post和评论comment两个表,文章表记录有评论的数量,但是这个值我们要一次更新。 如下,现在post表的comment_count都是0,我们的目标是:执行一个SQL语句,让其把统计comment表的数据数量。 post表数据如下: +---------+-------------------+---------------+ | post_id | title | comment_count | +---------+-------------…
« 上一页   下一页 »