运行环境 :centos
一、下载镜像:
docker pull centos:7
二、运行镜像
docker run -i -t -d –restart=always –name baota -p 20:20 -p 21:21 -p 80:80 -p 443:443 -p 888:888 -p 8888:8888 –privileged=true -v /Users/cluo/code/php:/www/wwwroot centos:7
sleep 30;
/usr/local/bin/docker exec centos bt start;
/usr/local/bin/docker exec centos /etc/init.d/nginx restart;
/usr/local/bin/docker exec centos /etc/init.d/php-fpm-72 restart;
/usr/local/bin/docker exec centos /etc/init.d/php-fpm-74 restart;
/usr/local/bin/docker exec centos /etc/init.d/mysqld restart;
/usr/local/bin/docker exec centos /etc/init.d/redis restart;
/usr/local/bin/docker exec centos /etc/init.d/pure-ftpd restart;
三、进入容器/部署
进入容器
docker exec -it baota /bin/bash
安装宝塔面板
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
配置用户名
bt 6
配置密码
bt 5
四、登录宝塔面板并修改相应参数
http://server:8888
解决mac主机无法与 Docker容器互通问题
方法很多,这里我说一下使用 docker-connector解决这个问题
这是一个github开源项目docker-connector
- Mac 通过 brew 安装 docker-connector
复制代码
brew install wenjunxiao/brew/docker-connector - 执行以下命令把 docker 的所有 bridge 网络都添加到路由中(拷贝已下指令)
复制代码
docker network ls –filter driver=bridge –format “{{.ID}}” | xargs docker network inspect –format “route {{range .IPAM.Config}}{{.Subnet}}{{end}}” >> /usr/local/etc/docker-connector.conf
或者修改 /usr/local/etc/docker-connector.conf 文件中的路由格式是
route 172.17.0.0/16
路由的子网决定了你能访问那些容器,docker-connector.conf这个文件之前是注释了的需要手动修改
- 配置完成,直接启动服务(需要 sudo,路由配置启动之后仍然可以修改,并且无需重启服务立即生效) sudo brew services start docker-connector
4.使用以下命令在 docker 端运行 wenjunxiao/mac-docker-connector,需要使用 host 网络,并且允许 NET_ADMIN,pull connector容器的作用是作为桥接
成功访问
docker run -it -d –restart always –net host –cap-add NET_ADMIN –name connector wenjunxiao/mac-docker-connector