首页 > 其他分享 >docker-compose搭建wordpress

docker-compose搭建wordpress

时间:2023-06-13 13:12:53浏览次数:42  
标签:compose db wordpress services docker containers

前言

我们都知道,docker是一个运行容器的软件。同时它也配置了一个运行一组容器的软件,叫做docker-compose。当我们使用非常小规模容器化应用的时候,我们可以使用此docker-compose去做。
 

docker-compose的介绍

根据官网的描述,docker-compose是一个能够管理多容器的工具,可以使用yaml文件来编写所需资源,并一键管理。

docker-compose支持的功能有:

[root@master wordpress]# docker-compose
Commands:
  build              Build or rebuild services
  bundle             Generate a Docker bundle from the Compose file
  config             Validate and view the Compose file
  create             Create services
  down               Stop and remove containers, networks, images, and volumes
  events             Receive real time events from containers
  exec               Execute a command in a running container
  help               Get help on a command
  images             List images
  kill               Kill containers
  logs               View output from containers
  pause              Pause services
  port               Print the public port for a port binding
  ps                 List containers
  pull               Pull service images
  push               Push service images
  restart            Restart services
  rm                 Remove stopped containers
  run                Run a one-off command
  scale              Set number of containers for a service
  start              Start services
  stop               Stop services
  top                Display the running processes
  unpause            Unpause services
  up                 Create and start containers
  version            Show the Docker-Compose version information

 

安装docker-compose(以Linux为例)

sudo yum install -y docker && systemctl start docker
sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose #需要root权限

测试docker-compose是否安装成功:

sudo docker-compose version

 

docker-compose配置文件编写并启动

mkdir -p /usr/local/wordpress && cd /usr/local/wordpress
nano docker-compose.yml #编辑docker-compose.yml文件
version: "3"
services:

   db:
     image: mysql:8.0
     command:
      - --default_authentication_plugin=mysql_native_password
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci     
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
  db_data:

编辑完毕之后,使用以下命令来启动:

sudo docker-compose up -d

但是,

Getting the final child's pid from pipe caused: EOF: unknown

如果遇到这个问题的话,原因是内存碎片过多,需要释放cache以消除问题。

echo 3 > /proc/sys/vm/drop_caches  #临时解决
echo 1 > /proc/sys/vm/compact_memory  #永久解决
sysctl -w vm.compact_memory=1   #永久解决

详情可以参考此文,特此感谢。

Getting the final child's pid from pipe caused: EOF: unknown

然后就会看到以下的结果:

[root@master wordpress]# docker-compose up -d
wordpress_db_1 is up-to-date
Starting wordpress_wordpress_1 ...
Starting wordpress_wordpress_1 ... done

然后输入http://ip:80,查看是否已经正常启动即可。
 

参考

Docker Compose overview | Docker Documentation

解决docker-compose: command not found问题的两种常用方法-云社区-华为云

实战 WordPress - Docker — 从入门到实践

Getting the final child's pid from pipe caused: EOF: unknown

标签:compose,db,wordpress,services,docker,containers
From: https://www.cnblogs.com/young233/p/17477234.html

相关文章

  • 云原生之使用docker部署nginx网站
    (云原生之使用docker部署nginx网站)一、检查本地系统版本[root@node~]#cat/etc/os-releaseNAME="CentOSLinux"VERSION="7(Core)"ID="centos"ID_LIKE="rhelfedora"VERSION_ID="7"PRETTY_NAME="CentOSLinux7(Core)"......
  • Ubuntu上安装并使用Docker
    第1步-安装Docker官方Ubuntu存储库中提供的Docker安装包,但是可能不是最新的版本。为了确保我们获得最新版本,我们将从官方Docker存储库安装Docker。为此,我们将添加一个新的资源包,从Docker添加GPG密钥以确保下载有效,然后安装该包。1、首先,更新现有的包列表:sudoaptupdate2、接......
  • Elasticsearch8 单机以及集群部署(docker-compose)
    本文以Elasticsearch8.8.0为例,介绍一下单机安装ES,使用docker-compose方式进行便捷管理需要准本docker环境:一键安装脚本 https://www.cnblogs.com/Alay/p/15433473.html需要准备docker-compose环境:一键安装脚本 https://www.cnblogs.com/Alay/p/15433907.html官网阅......
  • Docker 部署jenkins及项目
    本文主要记录如何通过docker安装jenkins,并且通过jenkins部署项目,最终效果是只要在jenkins对某个项目点击构建,jenkins就会去gitLab上拉取最新项目的最新代码,然后根据你自己项目的pom.xml文件,把项目打包成jar,并且自动把这个最新的jar运行起来,达到一键式构建的目标。1、操作1)服务......
  • window下安装docker并运行angular项目
    window下安装docker并运行angular项目1、使用场景本地有一个node项目,node版本是v16.13.2,在本地安装的angular是15.2.4但是测试服上面的node版本是14.19.3,angular是1.0.0-beta.28.3,会导致angular项目的ngbuild打包不了。但是不能升级版本,因为这个测试服务器上面的东西也......
  • 通过 docker-compose 快速部署 StarRocks 保姆级教程
    目录一、概述二、前期准备1)部署docker2)部署docker-compose三、创建网络四、StarRocks编排部署1)下载StarRocks部署包2)配置3)启动脚本bootstrap.sh4)构建镜像Dockerfile5)编排docker-compose.yaml6)开始部署五、简单测试验证六、常用的StarRocks客户端命令1)服务启停2、查看节......
  • Docker 安装 MySQL8 数据库
    创建数据卷mkdir-p/usr/mysql/conf/usr/mysql/datachmod-R755/usr/mysql/创建配置文件vim/usr/mysql/conf/my.cnf:[client]#socket=/usr/mysql/mysqld.sockdefault-character-set=utf8mb4[mysqld]#pid-file=/var/run/mysqld/mysqld.pid#sock......
  • Docker 安装与升级
    卸载旧版本sudoyumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engine/var/lib/docker/的内容,包括image、container、volumes,andnetworks,将被保留。Docker引擎包现......
  • 在docker环境下配置php以及swole并创建hyperf项目
    在上篇文章中说了在linux环境下安装php8.2以及swoole扩展的问题,只是很多时候我们的环境都是在windows下进行的,但是在windows中安装swoole太麻烦了。这时候就到了我们的docker出场的时候了。首先docker的安装,这个网上到处都是,就不多赘述了,贴一个docker官网地址:https:docker.com,顺......
  • docker安装hbase
    1.拉去镜像拉去前可以使用dockersearchhbase所有你需要的镜像dockerpullharisekhon/hbase2.然后在进行启动dockerrun-d-hhbase\-p2181:2181-p8080:8080-p8085:8085\-p9090:9090-p9095:9095-p16000:16000\-p16010:16010-p16020:16020-p16201:1620......