猿问
下载APP

请问该如何开发一个 PHP + MySQL 的 Docker 化应用?

如何开发一个 PHP + MySQL 的 Docker 化应用


FFIVE
浏览 46回答 4
4回答

皈依舞

创建 PHP 应用容器> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。首先,选择官方的 PHP 镜像作为项目的基础镜像。dockerfileFROM daocloud.io/php:5.6-apache接着,用官方 PHP 镜像内置命令 docker-php-ext-install 安装 PHP 的 MySQL 扩展依赖。dockerfileRUN docker-php-ext-install pdo_mysql依赖包通过 docker-php-ext-install 安装,如果依赖包需要配置参数则通过 docker-php-ext-configure 命令。安装 pdo_mysql PHP 扩展。然后,将代码复制到目标目录。dockerfileCOPY . /var/www/html/因为基础镜像内已经声明了暴露端口和启动命令,此处可以省略。至此,包含 PHP 应用的 Docker 容器已经准备好了。PHP 代码中访问数据库所需的参数,是通过读取环境变量的方式声明的。```php$serverName = env("MYSQL_PORT_3306_TCP_ADDR", "localhost");$databaseName = env("MYSQL_INSTANCE_NAME", "homestead");$username = env("MYSQL_USERNAME", "homestead");$password = env("MYSQL_PASSWORD", "secret");/*** 获取环境变量* @param $key* @param null $default* @return null|string*/function env($key, $default = null){$value = getenv($key);if ($value === false) {return $default;}return $value;}```这样做是因为在 Docker 化应用开发的最佳实践中,通常将有状态的数据类服务放在另一个容器内运行,并通过容器特有的 link 机制将应用容器与数据容器动态的连接在一起。绑定 MySQL 数据容器(本地)首先,需要创建一个 MySQL 容器。bashdocker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d daocloud.io/mysql:5.5之后,通过 Docker 容器间的 link 机制,便可将 MySQL 的默认端口(3306)暴露给应用容器。bashdocker run --name some-app --link some-mysql:mysql -d app-that-uses-mysql绑定 MySQL 数据服务(云端)比起本地创建,在云端创建和绑定 MySQL 数据服务会更简单。在 GitHub 上 Fork DaoCloud/php-apache-mysql-sample 或者添加自己的代码仓库。注册成为 DaoCloud 用户。在 DaoCloud 「控制台」中选择「代码构建」。创建新项目,选择代码源,开始构建镜像。在「服务集成」创建 MySQL 服务实例。将构建的应用镜像关联 MySQL 服务实例并部署在云端。

慕斯王

最方便的方式是下载一个php集成开发环境。然后安装即可。比如常用的php集成环境:xampp,phpstudy,wampserver等等。

慕码人2483693

进入Cygwin的官网下载最新版的Cygwin软件,根据自己的电脑选择位数,32位的就选32位的系统。再进入Eclipse CDT的官网,下载最新版的CDT软件。新建一个文件夹Eclipse-Neon,将下载好的两个软件放进去。解压eclipse软件到当前文件夹中。新建文件夹cygwin64,将cygwin的安装软件放进去。进入cygwin64,双击打开set-x86_64.exe,开始在本地安装cygwin环境。选择Install from Internet。指定Cygwin软件的根目录位置。指定Cygwin安装的软件包的存放路径。选择联网的方式。主要是选择需要安装的Linux软件包,默认情况下,Cygwin没有选择C++开发所需要的包,需要选中软件包。等到安装结束后,查看root目录下是否安装成功,添加Cygwin的路径到Windows的用户环境变量PATH中。在cygwin命令行中查看当前安装的gcc和gdb的版本,以验证基本的软件包是否安装成功。开始新建一个C语言工程,取名为test,编译链工具选择Cygwin GCC。配置路径映射,点击调试按钮,将调用GDB调试软件即可。

宝慕林4294392

一般情况是使用centos基础镜像创建一个容器进入新创建的容器,安装php开发环境将容器打包上传到docker镜像仓库以后需要使用Php开发环境时,只需要从镜像仓库拉取这个Php镜像创建一个容器即可
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答