1.通过 vagrant ssh登录虚拟机

2.在虚拟机中通过 yum 命令安装docker

3.通过docker -v检查docker是否安装成功

4.开启docker加速器

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://68abbefd.m.daocloud.io

然后重新启动docker  (service docker restart)

搭建nginx+php开发环境

关键点:映射的文件必须要写正确

 

1.Su root先以管理员身份登录

2.nginx和php环境的搭建:http://www.tuicool.com/articles/AVZFZ3m

3.docker搭建注意事项:

  • nginx镜像和php镜像下载好之后
  • 先部署php镜像

(docker run -p 9000:9000 --name php7 --restart=always -v /vagrant/app/www:/var/www/html -privileged=true -d php:7.1.0-fpm) ps: /vagrant/app/www为虚拟主机中的地址  --restart=always表示开机自动启动

  • 通过docker inspect php7获取对应的容器ip地址
  • 通过nginx镜像部署nginx容器

(docker run -p 80:80 -name nginx -v /vagrant/app/www:/usr/share/nginx/html -v /vagrant/app/logs:/var/log/nginx -v /vagrant/app/nginx/conf.d:/etc/nginx/conf.d --privileged=true -d nginx)

  • 修改/vagrant/app/nginx/conf.d下面的default.conf文件把
  • 重启nginx容器(docker restart nginx)

Docker问题

1. 处理通过docker pull下载速度慢的问题

开启加速器执行

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://68abbefd.m.daocloud.io

然后重新启动docker

2.docker相关资料

docker命令http://udn.yyuap.com/doc/docker_practice/appendix_repo/nginx.html

Docker中文网站http://www.docker.org.cn/forum/usage.html

Docker镜像安装http://www.runoob.com/docker/docker-install-mysql.html

Php扩展的安装

安装zip扩展

1. 执行

echo "@community http://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories
2.执行

apk --update add php7-zip@community

通过docker pull php:5.6安装的php容器

通过docker-php-ext-install 安装扩展eg:docker-php-ext-install redis

(ps:如果报错,则需要进行编译安装php扩展)

编译安装php扩展的具体步骤:

执行docker exec -it php5.6 /bin/sh 进入php5.6容器中

2.进入php安装目录

3.如果通过find /|grep php.ini找不到php.ini文件,按如下截图进行

4.

5.然后重启php之后,php.ini的位置就会出来

6.开始安装php的扩展

  • 执行cd /usr/src/php/ext进行php扩展目录(在https://pecl.php.net查找对应版本的扩展)
  • wget https://pecl.php.net/get/redis-3.1.2.tgz
  • Tar -zxvf redis-3.1.2.tgz
  • Mv redis-3.1.2.tgz redis
  • Docker-php-ext-install redis
  • 重启php之后,php扩展安装完成。

在安装gearman扩展的时候报编译时出错:configure: error: Please install libgearman

apt-get install libgearman-dev 如果没有找到执行 apt-get update

Xdebug配置

1.在安装完成xdebug扩展插件之后,配置xdebug

[xDebug]

zend_extension=xdebug.so

xdebug.auto_trace = 0

xdebug.remote_autostart = 1

xdebug.show_exception_trace = 0

xdebug.remote_enable = 1

xdebug.remote_connect_back = 1

xdebug.remote_host = 192.168.33.3     (ps:为请求访问的IP地址)

xdebug.remote_port = 9000

xdebug.idekey = phpstorm

xdebug.remote_handler = dbgp

xdebug.profiler_enable_trigger = 0

xdebug.profiler_enable = 0

xdebug.collect_vars = 1

xdebug.collect_return = 1

xdebug.collect_params = 1

linux中搭建docker的更多相关文章

  1. windows和linux中搭建python集成开发环境IDE——如何设置多个python环境

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  2. 【转】windows和linux中搭建python集成开发环境IDE

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  3. 在Linux中搭建一个FTP服务器

    在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用.禁用匿名.第一个小组使用ftp账号:ftp1,工作目录在:/var/ftp/ftp1:第二个小组使用ftp2,工作目录在:/var/f ...

  4. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  5. Arch系Linux中安装Docker

    Arch系Linux中安装Docker 1. 下载最新版docker $ sudo pacman -Syu docker 2. 免sudo执行docker $ sudo gpasswd -a ${US ...

  6. Windows(WSL2) Linux子系统搭建Docker环境

    摘要:本文主要介绍了如何再Windows(WSL2)中启用Linux系统中,并搭建Docker环境. WSL是适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux ...

  7. 如何在Linux中搭建禅道8.4.1(httpd+php+mysql)

    1.安装httpd 命令:yum install httpd 然后一路y即可 2.安装php 命令:yum install php   3.安装php-mysql 命令:yum install php ...

  8. Linux中搭建Maven私服

    linux安装maven 先解压maven的压缩包apache-maven-3.5.4-bin.tar.gz   命令: tar -zavf pache-maven-3.5.4-bin.tar.gz ...

  9. linux中搭建公网ftp服务器

    Linux搭建ftp服务器汇总整理 一.检查linux中是否已经安装vsftpd服务端软件 rpm -qa |grep vsftpd 二.卸载linux中的vsftpd服务端软件 rpm -e vsf ...

随机推荐

  1. 如何实现uboot和linux之间的参数传递

    参考http://cgxcn.blog.163.com/blog/static/132312422009101133251202/ 参考:http://blog.chinaunix.net/uid-1 ...

  2. ng file上传同域非同域

    跨域 vm.uploadFiles = function (file, errFiles) { if (file) { file.upload = Upload.upload({ url: vm.up ...

  3. Sphinx 安装与使用(2)-- 配置Coreseek

    1.必须先关闭守护进程才能做其他的操作(第一次启动不需要这一步) /usr/local/coreseek/bin/searchd --config /usr/local/coreseek/etc/te ...

  4. How tomcat works学习笔记

    最近在看Tomcat的源码, 所以找了一本相关的书籍<How tomcat works>. 博客内容多为 学习该书时所记录的笔记.(如有侵权行为,请联系我:eviltomorrow@163 ...

  5. selenium + js 处理窗口

    1.隐藏页面的广告窗口 document.getElementById("top_left").style.display="none"; 2.隐藏控件点击 d ...

  6. 黑马day11 事务的四大特性

    1.事务的四大特性:一个事务具有的最主要的特性.一个设计良好的数据库能够为我们保证这四大特性. 1.1原子性:原子性是指事务是一个不可切割的工作单位,事务中的操作要么都发生要么都不发生. 1.2一致性 ...

  7. 发现保存GIF格式后相素发生变化咋办

    数学公式编辑器MathType主要的作用就是编辑公式用的,一些用户朋友编辑完公式希望把公式保存为“高分辨率”的GIF格式,但是在图片查看器中进行浏览查看时发现GIF的分辨率发生了变化,对于这种情况该如 ...

  8. Java-iBATIS

    1.是什么? 2010年迁移到了google code,并且改名为MyBatis.ibatis1.ibatis2.到了版本3就改名为mybatis. iBATIS的是一个持久层框架,它能够自动在 Ja ...

  9. linux 文件文件夹操作

    文件夹下查询哪些文件含有abc内容: find .|xargs grep -ri "abc"

  10. org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [cn.facekee.cms.entity.CmsFansgroup#195]

    刚开始报错还是报的稀奇古怪的错误,让我纠结了好久,再三检查报错的位置,发现并没有错误,最后认真分析查看每行报错的信息才找到如题所述的错误!!!!! 报这种错误的原因可能是POJO映射文件中的字段和数据 ...