一些练习

一、安装nginx

    docker search nginx
    docker pull nginx
    docker run -d --name nginx01 -p 80:80 nginx
                    -d        //后台
                    --name        //容器名
                       -p外部端口:内部端口
    docker exec -it nginx01 bash        //进入交互模式

二、安装tomcat

    //官方的使用
    docker run -it --rm tomcat:9.0
 
    //我们之前的启动都是后台,停止了容器之后,docker ps -a还是可以查到,--rm一般用来测试,阅后即焚(包括images)。

    //下载并启动
    docker run -d -p 8080:8080 --name tomcat01 tomcat:9.0
    //本地没有的镜像会自动搜索下载,可用版本可取dockerhub网页搜索
    //测试访问,没有问题
    curl localhost:8080
    //进入容器
    docker exec -it tomcat01 bash
    //发现问题,1、linux命令少了。 2、没有webpass。镜像的原因,默认是最小的镜像,所有
    //不必要的命令都被剔除,保证最小的可运行环境!
 
    cd webapps
    cp -r webapps.dist/* webapps

三、部署es + kibana

    //es 暴露的端口很多
    //es 十分耗内存
    //es 的数据一般需要放置到安全目录!挂载
    //--net 网络配置
 
    //启动elasticsearch
    docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2
 
    //启动了 Linux就卡住了,非常吃内存
  
    //docker stats 查看所有容器运行状态
    curl locahost:9200
 
    //测试es是否成功了
 
    //赶紧关闭,增加内存限制,修改配置文件 -e 环境配置修改
    docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.2
 
    #docker stats 查看容器运行状态

四、安装Mysql

    //获取镜像
    docker pull Mysql:5.7
    //运行镜像,需要做数据挂载! 安装启动Mysql,需要配置密码,这是要注意的点!
    //官方命令
    docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --    collation-server=utf8mb4_unicode_ci
    //启动
    docker run -d -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=admin --name mysql01 mysql:5.7
    //如果本地先创建文件夹,再启动后,可能会出现覆盖情况。
    //启动成功后,可以用sqlyog测试一下
    //连接后在本地创建一个数据库,查看一下我们的映射的路径是否ok
    //容器删除后,本地文件还在。