Docker+数据卷+Dockerfile自定义镜像+Docker-Compose+部署项目

1.Docker环境部署

1.下载Dovker依赖环境

yum -y install yum-utils device-mapper-persistent-data lvm2

2.指定DOcker镜像源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.安装Docker

yum makecache fast

yum -y install docker-ce

4.启动DOcker并测试

systemctl start docker

2.镜像操作:

搜索:docker search tomcat

下载:docker pull hello-world(镜像名称)

查看所拥有的镜像:docker images

删除镜像:docker rmi bf756fb1ae65(镜像ID)

导出镜像:docker save -o 镜像ID 路径

加载镜像:docker load -i hello-world

修改镜像名称:docker tag bf756fb1ae65(镜像ID) hello-springboot(新名称):1.0(版本号)

3.容器操作:

直接运行:docker run (-d后台 -p映射)镜像id

运行容器:docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像的标识|镜像名称[:tag]

查看当前运行的容器: docker ps -a

停止当前的容器:docker stop 409682aee9f5(容器ID)

删除容器:docker rm 409682aee9f5(容器ID)

也可以直接运行镜像:docker run 镜像id 如果没有镜像,则自动下载

查看容器日志:docker logs -f 容器ID

进入容器内部:docker exec -it 容器id bash

复制内容到容器:docker cp 文件名称 容器ID:容器内部路径

启动停止的容器:docker start 容器ID

重新启动容器:docker restart 容器ID

4.下载并运行Tomcat和mysql

下载tomcat: docker pull tomcat:8.5.15-jre8

运行tomact:docker run -d -p 8080:8080 --name tomcat b8dfe9ade316

下载mysql: docker pull mysql:5.7.4

运行mysql: docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 aa5364eb3d85

5.数据卷

创建数据卷:docker volume create webapps

创建完成默认路径位:/var/lib/docker/volumes 数据卷名称/_data

查看数据卷详情: docker volume inspect webapps

查看所有的数据卷:docker volume ls

删除数据卷:docker volume rm webapps(名称)

容器映射数据卷:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JixAnMNW-1600950622298)(C:\Users\Lenovo、\AppData\Roaming\Typora\typora-user-images\image-20200924174451897.png)]

方式一:通过数据卷名映射

docker run -d -p 8080:8080 --name tomcat -v webapps(数据卷名称):/usr/local/tomcat/webapps(容器内部的命令) b8dfe9ade316(镜像ID)

复制到数据卷:

cp springboot.war /var/lib/docker/volumes/webapps/_data

方式二:通过路径映射数据

docker run -d -p 8080:8080 --name tomcat -v /opt/webapps(路径名称):/usr/local/tomcat/webapps(容器内部的命令) b8dfe9ade316(镜像ID)

cp springboot.war /opt/webapps

但是这个路径下是空的。

6.Dockerfile自定义镜像

1.创建文件:touch Dockerfile

2.编辑:vi Dockerfile

from daocloud.io/library/tomcat:8.5.15-jre8
cp springboot.war /usr/local/tomcat/webapps

3.创建:docker build -t tomcat(名称):1.0(版本) .(点)

4.运行:docker run -d -p 8080:8080 --name tomcat b8dfe9ade316

7.Docker-Compose

批量管理容器

1.上传docker-compose-Linux-x86_64

重命名: mv docker-compose-Linux-x86_64 docker-compose

2.移动:mv docker-compose /usr/local/bin

3.配置:vi /etc/profile

export PATH= J A V A H O M E : / u s r / l o c a l / b i n : JAVA_HOME:/usr/local/bin: JAVAHOME:/usr/local/bin:PATH

刷新: source /etc/profile

4.设置权限:

[root@iZ1sjqi6uiozyqZ jdk1.8.0_161]# cd /usr/local/bin
[root@iZ1sjqi6uiozyqZ bin]# ls
docker-compose
[root@iZ1sjqi6uiozyqZ bin]# chmod 777 docker-compose

5.测试:docker-compose

6.上传docker-compose.yml:

version: '3.1'
services:
    mysql:
        restart: always   # 代表只要docker启动,那么这个容器就跟着一起启动
        image: daocloud.io/library/mysql:5.7.4  # 指定镜像路径
        container_name: mysql
        ports:
           - 3306:3306
        environment:
            MYSQL_ROOT_PASSWORD: 123456
            TZ: Asia/Shanghai
        volumes:
            - /opt/docker_mysql_tomcat/mysql_data:/var/lib/mysql   # 映射数据卷
    tomcat:
        restart: always
        image: daocloud.io/library/tomcat:8.5.15-jre8
        container_name: tomcat
        ports:
           - 8080:8080
        environment:
            TZ: Asia/Shanghai
        volumes:
            - /opt/docker_mysql_tomcat/tomcat_webapps:/usr/local/tomcat/webapps
            - /opt/docker_mysql_tomcat/tomcat_logs:/usr/local/tomcat/logs

7.启动管理容器:docker-compose up -d

8.关闭并删除容器:docker-compose down

开启/关闭/重启已经存在的由docker-compose维护的容器

docker-compose start|stop|restart

9.查看由docker-compose管理的容器

docker-compose ps

10.查看日志:docker-compose logs -f

11.部署项目:

cp springboot.war /opt/docker_mysql_tomcat/tomcat_webapps

的容器

docker-compose start|stop|restart

9.查看由docker-compose管理的容器

docker-compose ps

10.查看日志:docker-compose logs -f

8.项目部署

cp springboot.war /opt/docker_mysql_tomcat/tomcat_webapps

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值