docker中的基本操作以及拉取mysql、oracle等配置。

镜像相关命令
    1.查看镜像
        docker images
    2.镜像的搜索
        docker search 镜像名称
    3.拉取:docker pull 镜像名称:版本号(若不指定则会拉取最新版本)  #eg: docker pull centos:7
    
    4.删除全部镜像:docker rmi 'docker images -q'     删除指定镜像:docker rmi 镜像id
    

容器的基本操作:
    1.查看容器: docker ps     查询所有 docker ps -a
    
    2.启动容器: docker run -it --name=mycentos7 centos:7 /bin/bash

       -i 表示运行容器
       -t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
       --name:为创建的容器命名
       -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件
            映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
       -d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t
            两个参数,创建后就会自动进去容器)。
       -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
       
    3.创建并启动守护式容器
        1.创建并启动守护式容器
            docker run -di --name=mycentos2 centos:7
        2.登录进入容器命令:
            docker exec -it mycentos2 /bin/bash
    
    4.停止并启动容器
        # 停止正在运行的容器:docker stop 容器名称或者ID
        docker stop mycentos2
        # 启动已运行过的容器:docker start 容器名称或者ID
        docker start mycentos2

    5.文件拷贝
    # docker cp 需要拷贝的文件或目录 容器名称:容器目录
    # 创建一个文件abc.txt
    touch abc.txt
    # 复制abc.txt到mycentos2的容器的 / 目录下
    docker cp abc.txt mycentos2:/
    # 进入mycentos2容器
    docker exec -it mycentos2 /bin/bash
    # 查看
    ll
    
    # docker cp 容器名称:容器目录 需要拷贝的文件或目录
    #进入容器后创建文件cba.txt
    touch cba.txt
    # 退出容器
    exit
    # 在Linux宿主机器执行复制;将容器mycentos2的/cba.txt文件复制到 宿主机器的/root目录下
    docker cp mycentos2:/cba.txt /root   #eg:docker cp mycentos2:/cba.txt /docker/DockerToolbox

    6.文件挂载
        # 创建linux宿主机器要挂载的目录
        mkdir /usr/local/test
        # 创建并启动容器mycentos3,并挂载linux中的/usr/local/test目录到容器的/usr/local/test;也就是在
        linux中的/usr/local/test中操作相当于对容器相应目录操作
        docker run -di -v /usr/local/test:/usr/local/test --name=mycentos3 centos:7
        # 在linux下创建文件
        touch /usr/local/test/def.txt
        # 进入容器
        docker exec -it mycentos3 /bin/bash

    
    7.查看容器的ip
    docker inspect 容器名称
    
    8.删除容器
    docker rm 容器名称
    

docker部署mysql:
    1.搜索mysql镜像 docker search mysql 
    2.拉取mysql镜像 docker pull centos/mysql-57-centos7
    3.创建一个mysql的守护容器 docker run -di --name=mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root centos/mysql-57-centos7     MYSQL_ROOT_PASSWORD:远程连接密码
    4.启动守护容器  docker exec -it mysql5.7 /bin/bash
    5.连接mysql mysql -u root -p  初始为空
    6.Navicat工具连接容器mysql  
    

docker部署oracle:可参考以下三个,亲测可行,请结合起来看。
https://blog.csdn.net/zwx521515/article/details/77982884

https://blog.csdn.net/qq_38380025/article/details/80647620

https://blog.csdn.net/qq_20057315/article/details/90769728?utm_medium=distribute.wap_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.wap_blog_relevant_pic&depth_1-utm_source=distribute.wap_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.wap_blog_relevant_pic

 

oracle中新建用户时,需要给用户赋值权限,否则,不能进行数据库的创建等操作。下面是简单的oracle权限赋值:

创建用户:
create user username identified by password;
给用户授权:
grant connect, resource to username;
登陆用户:
conn username/password;

username是创建的用户名,password是创建的密码。

 

docker部署Tomcat:
    1.拉取tomcat镜像 docker pull tomcat
    # 创建tomcat容器;并挂载了webapps目录
    docker run -di --name=mytomcat -p 9000:8080 -v
    /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat
    # 如果出现 WARNING: IPv4 forwarding is disabled. Networking will not work.
    #执行如下操作
    # 1、编辑 sysctl.conf
    vi /etc/sysctl.conf
    # 2、在上述打开的文件中后面添加
    net.ipv4.ip_forward=1
    # 3、重启network
    systemctl restart network
    测试访问宿主机的端口号为9000的 tomcat。地址:http://宿主机ip:9000,也可以往/user/local/tomcat/webapps
下部署应用,然后再访问。

docker部署nginx:
    1.拉取nginx镜像 docker pull nginx 
    2.创建一个守护容器 docker run -di --name=mynginx -p80:80 nginx
    3.在浏览器上访问容器中nginx,http:192.168.99.101  启动后再宿主机上访问:http://宿主机IP/
    注:如果被占用80端口,那么在指定映射的时候可以改变宿主机的端口映射,在访问时也需要带上端口号

docker部署redis:
    1.拉取redis镜像,
    2.创建并启动redis容器;默认端口是6379,如果需要外部访问则可以使用端口映射;
    3.连接redis: 1.使用命令行客户端 2.使用图形界面工具 
    # 创建容器
    docker run -di --name=myredis -p 6379:6379 redis
    # 进入容器
    docker exec -it myredis /bin/bash
     
    进入bin目录 cd /usr/local/bin/  执行redis客户端 ./redis.cli
    
    

其他参考: 
    
    配置阿里云镜像 可参考 
    https://blog.csdn.net/echo_Ae/article/details/103563449

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------


    进入要打包的项目目录  然后执行 mvn clean package docker:build  将项目打成镜像  然后再访问。 
    

使用Dockerfile创建镜像:
**目标**:使用Dockerfile创建一个自定义jdk1.8的镜像

**分析**:

假设在centos7作为基础镜像上;添加jdk1.8并构建一个包含jdk1.8的centos7新镜像。

-- Dockerfile可以实现;Dockerfile是由一系列命令和参数构成的文本文件,在文件中可以指定各个组件资源和运行命令等。

实现步骤:

1. 拉取centos7镜像;
2. 上传jdk1.8;
3. 编写Dockerfile文件;
4. 构建镜像;
5. 测试(基于新镜像创建并运行容器,运行java -version)

    Dockerfile可以基于镜像制作镜像;`docker build -t='jdk1.8' . `
    
    
    
    
    
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值