在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。 创建容器 添加-v参数 后边为 宿主机目录:容器目录,例如:
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos3 centos:7如果你共享的是多级的目录,可能会出现权限不足的提示。
这是因为CentOS7中的安全模块selinux把权限禁掉了,我们需要添加参数 --privileged=true 来解决挂载的目录没有权限的问题。
2.2.6 查看容器 IP 地址(1)我们可以通过以下命令查看容器运行的各种数据
docker inspect 容器名称(容器ID)(2)也可以直接执行下面的命令直接输出IP地址
docker inspect --format=\'{{.NetworkSettings.IPAddress}}\' 容器名称(容器ID) 2.2.7 实时查看docker容器的日志 docker logs -f -t --tail -f 容器名称(或者容器ID) 2.2.8 删除容器删除容器前需要先停止要删除的容器。
docker rm 容器名称(容器ID) 3. 应用部署 3.1 MySQL部署(1)拉取mysql镜像
docker pull centos/mysql-57-centos7(2)创建容器
docker run -di --name=tensquare_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的登陆密码
(3)进入mysql容器
docker exec -it tensquare_mysql /bin/bash(4)登录mysql并修改root密码
mysql -u root -pALTER USER \'root\'@\'localhost\' IDENTIFIED BY \'123456\';
(5)添加远程登录用户
CREATE USER \'tanghuan\'@\'%\' IDENTIFIED WITH mysql_native_password BY \'123456\';GRANT ALL PRIVILEGES ON *.* TO \'tanghuan\'@\'%\';
(6)远程登录mysql
mysql -h 连接宿主机的IP -u 数据库拥有的用户名 -p 3.2 tomcat部署(1)拉取镜像
docker pull tomcat:7-jre7(2)创建容器
-p表示地址映射端口,-v表示挂载目录
docker run -di --name=mytomcat -p 9000:8080 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7-jre7(3)将本地war包拷贝到宿主机/usr/local/webapps路径下完成部署
3.3 Nginx部署(1)拉取镜像
docker pull nginx(2)创建Nginx容器
docker run -di --name=mynginx -p 80:80 nginx(3)进入Nginx容器中
docker exec -it mynginx /bin/bash(4)查看nginx.conf配置文件
cat /etc/nginx/nginx.conf