Mac上用Docker搭建自己的lamp环境

Docker docker.com
Docker docker.com

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

安装好了的样子


状态栏
状态栏

docker的提示
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

文章来源:bigcode

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,697评论 15 147
  • docker基本概念 1. Image Definition 镜像 Image 就是一堆只读层 read-only...
    慢清尘阅读 12,848评论 1 21
  • 转载自 http://blog.opskumu.com/docker.html 一、Docker 简介 Docke...
    极客圈阅读 13,580评论 0 120
  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 5,796评论 0 7
  • 今天阿闯从钢琴的角度带领我们学习乐理知识,主要分享了4点 1、钢琴键的画法 2、钢琴键上标音名 3、大小和弦的区别...
    刘小权PCC认证教练阅读 3,311评论 0 3