Docker安装部署
注意:
Docker 官方建议在 Ubuntu 中安装,如果是CentOS建议安装在 CentOS7.x 以上的版本。
1.在 VMware Workstation 中安装 CentOS7
下载镜像文件,安装,并配置网络。此处不详解释,详情可见百度。
2.安装 Docker
Docker在线安装命令:yum install docker
安装后查看版本号:docker -v
3.启动 停止Docker
启动:systemctl start docker
停止:systemctl stop docker
重启:systemctl restart docker
查看状态:systemctl status docker
开机启动:systemctl enable docke
启动成功如下图:
4.Docker镜像下载与操作
列出所有镜像:docker images
REPOSITORY:镜像所在的仓库名称
TAG:镜像标签
IMAGE ID:镜像 ID
CREATED:镜像的创建日期(不是获取该镜像的日期)
SIZE:镜像大小
这些镜像都是存储在 Docker 宿主机的/var/lib/docker 目录下
搜索镜像: docker search 镜像名称
从Docker Hub拉取镜像: docker pull centos:7
删除镜像:
docker rmi $IMAGE_ID:删除指定镜像
docker rmi `docker images -q`:删除所有镜像
5.容器操作
交互式容器:
创建一个交互式容器并取名为mycentos:
docker run -it --name=mycentos centos:7 /bin/bash
退出当前容器,该容器也随之停止
守护式容器
创建一个守护式容器:如果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器。命令如下(容器名称不能重复):
docker run -d --name=mycentos2 centos
登录守护式容器方式: docker exec -it container_name (或者 container_id)
查看容器: /bin/bash(exit 退出时,容器不会停止)
查看最后一次运行的容器:docker ps –l
查看正在运行容器:docker ps
停止正在运行的容器:docker stop $CONTAINER_NAME/ID
停止所有的容器: docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)
启动已运行过的容器:docker start $CONTAINER_NAME/ID
启动所有的容器:docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)
删除指定的容器:docker rm $CONTAINER_ID/NAME
删除所有容器:docker rm `docker ps -a -q`
6.应用部署
a>MySql
拉取 MySQL 镜像:docker pull mysql
创建 MySQL 容器:
容器名mysql_yizhigou端口号33306 密码 123456
docker run --name mysql_yizhigou -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 -di mysql
登录mysql: mysql -u root -p
远程登录并创建表数据
查看容器 IP 地址
docker inspect mysql_yizhigou
也可以直接执行下面的命令直接输出 IP 地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' mysql_yizhigou
b>TomCat
拉取 tomcat 镜像docker pull tomcat:7-jre7
创建 tomcat 容器: docker run -di --name cas_web -p 9000:8080 tomcat:7-jre7
部署 web 应用:
例:
单点登录CAS:
1.修改其数据库配置文件deployerConfigContext.xml
2.将 cas 文件夹上传至宿主机
3.将 cas 文件夹拷贝到到容器/usr/local/tomcat/webapps 目录
docker cp cas cas_web:/usr/local/tomcat/webapps
测试:地址栏输入:http://192.xxx.xxx.xxx:9000/cas/login
c>Nginx
拉取Nginx镜像 docker pull nginx
创建 Nginx 容器 docker run -di --name=yizhigou_nginx -p 80:80 nginx
测试 Nginx
浏览器地址栏输入: http://192.xxx.xxx.xxx