溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

docker安裝mysql、redis鏡像的方法是什么

發(fā)布時(shí)間:2023-04-26 16:27:06 來源:億速云 閱讀:125 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“docker安裝mysql、redis鏡像的方法是什么”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

    docker安裝mysql、redis鏡像

    docker鏡像商店:官方鏡像商店

    redis安裝下載

    下載鏡像:

    docker安裝mysql、redis鏡像的方法是什么

    docker安裝mysql、redis鏡像的方法是什么

    可直接默認(rèn)下載最新鏡像,也可以指定版本下載【注意,版本差異不大的軟件可以直接下載最新版本,差異大的,例如java,mysql等,最好指定熟悉的版本進(jìn)行下載

    docker pull redis

    啟動(dòng)鏡像:

    docker run --name=redis -d --restart=always -p 6379:6379 redis
    • --name:別名

    • -d:后臺(tái)運(yùn)行,鏡像不會(huì)隨窗口關(guān)閉而關(guān)閉

    • --restart=always:隨docker啟動(dòng)而自啟 可以進(jìn)行后配置:docker update --restart=always [容器名稱|id]

    • -p:6379[主機(jī)端口]:6379[映射端口],如果有版本號(hào),應(yīng)該帶上版本號(hào)redis:6.2.6

    掛載外部文件啟動(dòng):

    提前創(chuàng)建好文件夾和文件,redis.conf如果沒有特別的配置,可以參考(測試環(huán)境,生產(chǎn)環(huán)境換成本地,關(guān)閉密碼即可):

    docker安裝mysql、redis鏡像的方法是什么

    #redis使用自定義配置文件啟動(dòng)
     
    docker run -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
    -v /mydata/redis/data:/data \
    -d --name redis \
    --restart=always \
    -p 6379:6379 \
    redis:latest  redis-server /etc/redis/redis.conf
     
    #最后這一句代表自啟動(dòng)方式,redis啟動(dòng)默認(rèn)不加載此處配置
    redis-server /etc/redis/redis.conf

    mysql安裝下載

    鏡像參考redis直接下載對(duì)應(yīng)版本即可。

    -v:配置掛載,冒號(hào)左邊為容器內(nèi)部想要掛載出去的配置路徑,右邊為掛載的實(shí)際路徑

    例如:mysql,掛載日志,數(shù)據(jù),配置等信息到外部

    docker run -p 3306:3306 --name mysql \
    -v /mydata/mysql/log:/var/log/mysql \
    -v /mydata/mysql/data:/var/lib/mysql \
    -v /mydata/mysql/conf/my.cnf:/etc/mysql/my.cnf \
    -e MYSQL_ROOT_PASSWORD=root \
    -d mysql:5.7

    修改配置文件 my.cnf

    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    [mysqld]
    init_connect='SET collation_connection = utf8_unicode_ci'
    init_connect='SET NAMES utf8'
    character-set-server=utf8
    collation-server=utf8_unicode_ci
    skip-character-set-client-handshake
    skip-name-resolve
    lower_case_table_names=1

    最后說一下文件外部掛載的優(yōu)缺點(diǎn):

    • 優(yōu)點(diǎn):修改配置方便,不用每次都進(jìn)入容器內(nèi)部

    • 缺點(diǎn):外部掛載方式鏡像將不可以打包傳遞

    docker安裝使用及用docker安裝mysql,Redis,nacos

    安裝

    卸載之前的docket

    sudo yum remove docker \
                       docker-client \
                       docker-client-latest \
                       docker-common \
                       docker-latest \
                       docker-latest-logrotate \
                       docker-logrotate \
                       docker-engine
    sudo yum install -y yum-utils  //設(shè)置存儲(chǔ)庫

    設(shè)置倉庫地址,默認(rèn)國外,也可以設(shè)置阿里云的

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

    安裝docket引擎等組件

    sudo yum install docker-ce docker-ce-cli containerd.io

    啟動(dòng)docket

    sudo systemctl start docker

    配置加速鏡像

    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://chqac97z.mirror.aliyuncs.com"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker

    docket常用命令

    systemctl stop docker //關(guān)閉docker
    systemctl restart docker //重啟docker
    systemctl status docker  //查看docker狀態(tài)
    systemctl enable docker  //設(shè)置docker開機(jī)自啟動(dòng)
    
    docker images  //查看自己服務(wù)器的鏡像列表
    docker search 鏡像名  //搜索指定鏡像
    docker search --filter=STARS=9000 mysql  //搜索 STARS >9000的 mysql 鏡像
    docker pull 鏡像名 //拉取docker倉庫里的鏡像
    docker pull 鏡像名:tag  //拉取docker倉庫里指定版本的鏡像,具體版本號(hào)需要到鏡像官網(wǎng)查看(https://hub.docker.com/search?type=image)
    docker pull mysql 5.7.30 //拉取5.7.30的mysql
    docker run 鏡像名  //運(yùn)行鏡像
    docker run 鏡像名:Tag  //運(yùn)行指定版本的鏡像
    
    docker rmi -f 鏡像名/鏡像ID //刪除一個(gè)鏡像,鏡像沒有被別的鏡像使用才可以刪除
    docker rmi -f 鏡像名/鏡像ID 鏡像名/鏡像ID 鏡像名/鏡像ID  //刪除多個(gè)鏡像,空格隔開
    docker rmi -f $(docker images -aq) //刪除全部鏡像  -a 意思為顯示全部, -q 意思為只顯示ID
    docker image rm 鏡像名稱/鏡像ID  //強(qiáng)制刪除鏡像
    
    docker save 鏡像名/鏡像ID -o 鏡像保存在哪個(gè)位置與名字
    docker save tomcat -o /myimg.tar //保存Tomcat到myimg.tar里
    docker commit -m="提交信息" -a="作者信息" 容器名/容器ID 提交后的鏡像名:Tag
    
    docker ps  //查看正在運(yùn)行容器列表
    docker ps -a  //查看所有容器 -----包含正在運(yùn)行 和已停止的
    docker exec -it 容器名 路徑//進(jìn)入容器 里的路徑
    #刪除一個(gè)容器
    docker rm -f 容器名/容器ID
    #刪除多個(gè)容器 空格隔開要?jiǎng)h除的容器名或容器ID
    docker rm -f 容器名/容器ID 容器名/容器ID 容器名/容器ID
    #刪除全部容器
    docker rm -f $(docker ps -aq)
    docker start 容器ID/容器名  //啟動(dòng)容器
    docker stop 容器ID/容器名    //停止容器
    docker restart 容器ID/容器名    //重啟容器
    docker kill 容器ID/容器名  //kill 容器
    
    docker cp 容器ID/名稱: 容器內(nèi)路徑  容器外路徑        //容器內(nèi)拷文件到外面
    docker cp 容器外路徑 容器ID/名稱: 容器內(nèi)路徑        //容器外拷文件到容器內(nèi)
    docker run -it -d --name 容器別名 鏡像名 --restart=always   //容器隨著docker啟動(dòng)而啟動(dòng)
    docker update --restart=always 容器Id 或者 容器名 //修改容器啟動(dòng)配置(設(shè)置自啟動(dòng))
    docker rename 容器ID/容器名 新容器名  //更改容器名
    
    docker logs container-id    //查看容器日志
    sudo docker info | grep "Docker Root Dir"  //查看docker工作目錄
    du -hs /var/lib/docker/     //查看docker磁盤占用總體情況
    docker system df    //查看Docker的磁盤使用具體情況
    docker rm `docker ps -a | grep Exited | awk '{print $1}'`  //#  刪除異常停止的容器
    docker rmi -f  `docker images | grep '<none>' | awk '{print $3}'` //刪除名稱或標(biāo)簽為none的鏡像

    使用docker安裝MySQL

    sudo docker pull mysql:5.7.39  //拉取mysql鏡像到本地
    # --name指定容器名字 -v目錄掛載 -p指定端口映射(宿主機(jī)端口:容器端口)  -e設(shè)置mysql參數(shù) -d后臺(tái)運(yùn)行
    sudo docker run --name mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/mysql-files:/var/lib/mysql-files/  -e MYSQL_ROOT_PASSWORD=root  -p 3306:3306 -d mysql:5.7
    docker exec -it 容器名稱|容器id bin/bash  //進(jìn)入容器里
    exit  //退出容器
     -v /usr/local/mysql/mysql-files:/var/lib/mysql-files/

    驗(yàn)證:用連接工具測試能不能連接成功,或window下cmd測試

    ssh -v -h 3306 IP

    使用docker安裝Redis

    docker pull redis:6.0.10  //拉取鏡像

    創(chuàng)建配置文件,docker-Redis里面默認(rèn)沒有配置文件,在宿主機(jī)創(chuàng)建并掛載到容器里

    mkdir /home/redis
    cd /home/redis
    vi redis.conf

    添加如下內(nèi)容

    bind 0.0.0.0  開啟遠(yuǎn)程權(quán)限
    appendonly yes  開啟aof持久化

    啟動(dòng)Redis容器并掛載文件

    docker run --name redis  -v /home/redis/data:/data  -v /home/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 -d redis:6.0.10  redis-server /usr/local/etc/redis/redis.conf
    docker exec -it redis redis-cli //進(jìn)入Redis客戶端

    安裝nacos

    拉取鏡像

    docker pull nacos/nacos-server

    查看鏡像

    docker images

    啟動(dòng)容器

    docker run --env MODE=standalone --name mynacos -d -p 8848:8848 docker.io/nacos/nacos-server

    查看啟動(dòng)日志

    docker logs -f mynacos

    日志中顯示nacos服務(wù)地址為:

    http://172.18.0.2:8848/nacos/index.html

    默認(rèn)賬號(hào)密碼都是nacos

    進(jìn)入nacos容器查看配置

    docker ps
    docker exec -it 容器名或ID /bin/bash
    ls
    cd conf/
    ls

    修改啟動(dòng)配置文件

    進(jìn)入

    docker exec -it nacos /bin/bash

    進(jìn)入啟動(dòng)腳本

    cd /home/nacos/bin
    vim docker-startup.sh

    “docker安裝mysql、redis鏡像的方法是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

    向AI問一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI