Mac系统上用Docker搭建lamp环境

 更新时间:2016年12月12日 10:24:09   投稿:daisy  
这篇文章主要给大家介绍了Mac系统上用Docker如何搭建lamp环境,文章给大家介绍的很详细,有需要的朋友们可以参考借鉴,下面来一起看看吧。

前言

docker终于出来mac版本了,赶紧去下载,安装步骤,以前没有Mac版本的时候还要装docker toolbox,现在直接下载安装就好了。

安装好了的样子


状态栏

docker的提示

这个时候就可以到终端里面输入docker命令

$ docker --version
Docker version 1.13.0-rc3, build 4d92237
$ docker-compose --version
docker-compose version 1.9.0, build 2585387
$ docker-machine --version
docker-machine version 0.9.0-rc2, build 7b19591

如果在终端里面输入docker提示的是command not found请将docker加入到环境变量

vim /etc/profile
最后插入 export PATH=${PATH}:/usr/local/bin ## docker命令安装到了这个目录

hello world

docker run hello-world

主要用来测试docker是否安装好,能否正常使用


hello world

docker images 查看已经下载的镜像

docker ps 查看在运行的容器

docker ps -a 查看全部运行的容器

查看先用的容器

删除镜像和容器(为了好理解什么是镜像什么是容器,我是这么想的,镜像就是一个什么都没有装关闭着的电脑,容器就是安装了需要的软件运行中的电脑)

docker rm  删除容器

docker rmi 删除镜像

docker rmi c54a2cc56cbb 就会删除hello-world镜像

docker rmi c5 也会删除hello-world镜像  因为c5能在你的镜像列表里面代表唯一的镜像,docker会帮你自动补全

LAMP

查找hub.docker.com里面的Ubuntu版本

docker search ubuntu

安装Ubuntu

docker pull ubuntu # 这样安装的Ubuntu版本是16.04的
docker pull ubuntu:14.04 # ubuntu 14.04 版本

进入Ubuntu容器,安装软件

docker run <image id> -i -t /bin/bash # -i 同步输入 -t 同步输出 -d 持续运行
然后就进入到了熟悉的Ubuntu
安装 vim apache2 mysql php5 redis
apt-get update 
apt-get install vim
apt-get install apache2
apt-get install mysql-server
apt-get install php5 libapache2-mod-php5 php5-gd php5-mysql
apt-get install redis-server php5-redis

安装完成之后 exit 退出bash,当前容器就会停止

如果运行的时候加了 -d 参数就可以通过 attach 和 exec 再次进去容器

docker attach -i -t <container id> /bin/bash
docker exec -i -t <container id> /bin/bash

使用 docker ps -a 查看当前的容器

我们刚刚弄好的容器当然需要保存一下成镜像,不然每次使用这个容器的时候都需要安装软件,使用 commit 命令

docker commit -m"description" <container ID> new_name

再次 docker images 就会发现刚刚提交的images出现在列表里面了

映射本地端口到容器端口 映射本地文件夹到容器文件夹

docker run -itd -p 8989:80 -v /Users/PHP/wwwroot:/var/www/html 74b3eadeafea /bin/bash

-p 将本地的8989端口映射到容器的80端口

-v 将本地的 文件夹映射到服务器Apache默认的网站目录下

将自己的镜像上传到hub.docker.com

首先到docker.com注册账号,新建一个 REPOSITORY

docker login # 登录docker
docker tag <images ID> <namespace>/<image name>:<version tag eg latest>
docker push <namsoace>/<image name> # 等待上传完了就好了

上传完了的Tags

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

  • docker-compose搭建etcd集群的实现(三节点)

    docker-compose搭建etcd集群的实现(三节点)

    本文主要介绍了docker-compose搭建etcd集群的实现(三节点),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • Docker容器动态加载挂载目录的实践

    Docker容器动态加载挂载目录的实践

    本文主要介绍了Docker容器中动态加载挂载目录的实践,通过挂载目录,可以将主机上的文件或目录与容器中的文件或目录进行关联,实现应用程序的灵活性和可扩展性,这种方法可以避免容器重启,减少应用程序的停机时间,并简化应用程序的部署和管理,使应用程序的迁移和扩展更加容易
    2024-10-10
  • 优化docker镜像体积的方法详解

    优化docker镜像体积的方法详解

    镜像的本质是镜像层和运行配置文件组成的压缩包,构建镜像是通过运行 Dockerfile 中的 RUN 、COPY 和 ADD 等指令生成镜像层和配置文件的过程,本文给大家介绍了如何优化 docker 镜像体积,需要的朋友可以参考下
    2025-03-03
  • cordon节点drain驱逐节点delete节点详解

    cordon节点drain驱逐节点delete节点详解

    这篇文章主要为大家介绍了cordon节点drain驱逐节点delete节点详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • 两种方式创建docker镜像的启动容器时区别介绍(总结篇)

    两种方式创建docker镜像的启动容器时区别介绍(总结篇)

    这篇文章主要介绍了基于两种创建docker镜像的启动容器时区别总结,第一种凡是用docker commit生成的镜像启动的时候可以加载一个启动自己应用的脚本,第二种用Docfile文件生成的镜像时,来启动容器就不用再加这个脚本了,具体详情一起通过本文学习吧
    2016-10-10
  • 使用portainer连接远程docker的教程

    使用portainer连接远程docker的教程

    Portainer是一个轻量级的docker环境管理UI,可以用来管理docker宿主机和docker swarm集群,这篇文章主要介绍了使用portainer连接远程docker的方法,需要的朋友可以参考下
    2020-03-03
  • docker 搭建hadoop以及hbase集群详解

    docker 搭建hadoop以及hbase集群详解

    本篇文章主要介绍了docker 搭建hadoop以及hbase集群详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • docker容器与centos宿主机时间一致设置方法

    docker容器与centos宿主机时间一致设置方法

    这篇文章主要介绍了docker容器与centos宿主机时间一致设置方法,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-05-05
  • docker-compose启动mongo容器的使用

    docker-compose启动mongo容器的使用

    这篇文章主要介绍了docker-compose启动mongo容器的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • Docker使用Link在容器之间建立连接

    Docker使用Link在容器之间建立连接

    这篇文章主要介绍了Docker使用Link在容器之间建立连接的相关资料,需要的朋友可以参考下
    2016-10-10

最新评论