Docker

    科技2024-06-09  74

    Docker

    1、什么是Docker?

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

    Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

    容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

    2、使用Docker步骤

    1)、安装Docker

    2)、去Docker仓库找到这个软件对应的镜像

    3)、使用Docker运行这个镜像,这个镜像就会生成一个Docker容器

    4)、对容器的启动停止就是对软件的启动停止

    3、Linux下使用Docker

    3.1、安装

    1)、检查内核版本,3.10及以上

    uname -a

    2)、更新yum包到最新

    yum update yum install -y yum-utils device-mapper-persistent-data lvm

    3)、设置yum源为阿里云

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

    4)、安装docker

    sudo yum install docke

    5)、启动docker

    systemctl start docker

    6)、设置docker开机启动

    systemctl enable docker

    3.2、docker镜像操作

    1)、搜索docker仓库镜像(docker hub)

    docker search XXX

    2)、拉去镜像。不指定tag默认为latest最新

    docker pull 镜像名:tag

    3)、查看已有镜像列表

    docker images

    4)、删除镜像

    docker rmi 镜像id

    3.3、容器操作

    运行镜像就会产生一个容器。

    1)、运行

    docker run --name mysql -d tomcat:latest –name指定名字-d以后台方式运行latest:tag,默认latest

    2)、查看正在运行的容器

    docker ps -a:查看所有的容器

    3)、停止运行的容器

    docker stop 容器ID

    4)、删除容器

    docker rm 容器id

    5)、进入容器

    docker exec -it 容器name bash docker exec -it 容器ID /bin/bash docker attach 容器ID

    6)、退出容器

    exit ctrl+p+q

    3.4、启动一个tomcat容器

    1)、查看linux防火墙状态

    service firewalld status

    tomcat服务器可能无法访问,原因可能是防火墙

    关闭防火墙:service firewalld stop配置端口开放

    2)、运行tomcat容器命令

    docker run -d -p 8888:8080 tomcat -p:端口映射,linux8888端口映射到daocker容器的8080端口

    3)、查看容器日志

    docker logs 容器id

    更多命令参考官方文档:https://docs.docker.com/engine/reference/commandline/docker

    可以参考每一个镜像的文档(docker hub)

    注意:

    docker安装tomcat后访问首页可能失败(404),原因是webapps下为空,webapps.dist下面的文件及文件夹移动过去就好了。

    3.5、运行其他容器

    1)、MySql

    docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
    Processed: 0.009, SQL: 8