最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker常用命令與小技巧匯總

 更新時(shí)間:2019年10月08日 08:32:44   作者:FlyML  
這篇文章主要給大家介紹了關(guān)于Docker常用命令與小技巧的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Docker具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

安裝腳本

Ubuntu / Centos

Debian的安裝貌似有問題, 需要解決安裝源的問題。

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun / AzureChinaCloud

如果在海外的AWS或者GCP等云服務(wù)器廠商, --mirror 自然不需要加上去了。

Centos在運(yùn)行完成之后, 還需要手動(dòng)的 sudo systemctl start docker.service 否則會(huì)提示docker沒有啟動(dòng)之類的錯(cuò)誤

日志相關(guān)

Grep String

正確的姿勢(shì): docker logs nginx 2>&1 | grep "127."

比如查看Jupyter Notebook的token: docker logs notebook 2>&1 | grep "token"

其他支持的參數(shù)

-f : 類似tail -f 命令

--since : 從某個(gè)時(shí)間戳開始,比如 2013-01-02T13:23:37 也支持相對(duì)時(shí)間,比如: 42m

--until : 與上類似, 不過是反過來。

-t, --timestamp : 顯示時(shí)間戳

--tail N(default all) : 顯示最后幾行數(shù)據(jù)

Mount的技巧
比如Grafana 等,在docker image之中自帶一些文件。如果直接mount對(duì)應(yīng)的目錄并且host目錄為空, 那么docker內(nèi)部的

目錄就會(huì)被覆蓋。如何處理這種情況呢?

簡(jiǎn)單粗暴的方法1:(思路only)

先運(yùn)行一次, 然后使用 docker cp 命令將其復(fù)制出來

然后刪除剛才的docker container, 將文件復(fù)制到對(duì)應(yīng)的目錄,再mount

更優(yōu)雅一些的方法2:

以啟動(dòng) ClickHouse 為例

# Step 1.1: 創(chuàng)建一個(gè)docker volume (目的: 把CH Server的配置暴露出來)
docker volume create --driver local \
--opt type=none \
--opt device=/home/centos/workspace/clickhouse/configs \
--opt o=bind \
ch-server-configs

# Step 1.2 : 創(chuàng)建volume , mount 數(shù)據(jù)庫數(shù)據(jù)
docker volume create --driver local \
--opt type=none \
--opt device=/home/centos/workspace/clickhouse/data \
--opt o=bind \
ch-server-data

# Step 2 : 啟動(dòng) (注意: 當(dāng)存儲(chǔ)數(shù)據(jù)較多的時(shí)候, 第二次啟動(dòng),會(huì)花比較長(zhǎng)的時(shí)間來初始化。 初始化結(jié)束之前嘗試鏈接會(huì)失敗。)
sudo docker run -d --name mkt-ch-server \
-v ch-server-configs:/etc/clickhouse-server \
-v ch-server-data:/var/lib/clickhouse \
--restart always \
-p 9000:9000 -p 8123:8123 \
--ulimit nofile=262144:262144 yandex/clickhouse-server

這樣docker鏡像自帶的配置文件就不會(huì)在第一次mount的時(shí)候被清空

定時(shí)任務(wù)

比如mysql需要定期導(dǎo)出數(shù)據(jù)備份。這個(gè)操作最好是利用宿主機(jī)的crond來完成

0 1 * * * docker exec mysqldump xxxx

常用Docker鏡像及其安裝命令

MySQL

安裝

docker run --name some-mysql --restart always\
-v /my/own/datadir:/var/lib/mysql\
-e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

Dump 數(shù)據(jù)

方式1: 已經(jīng)在本地有mysql docker container

下面的命令是針對(duì)docker內(nèi)部的mysql,也可以直接指定參數(shù)dump remote mysql

docker exec some-mysql sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /path-to-data/all-databases.sql

方式2 : 在本地還沒有mysql docker container

# 用完就刪除,并在命令行提示輸入密碼
docker run -i --rm mysql:5.7 mysqldump --all-databases\
-h 172.17.0.1 -uroot -p | gzip -9 > /home/centos/workspace/mysql-data/backup.sql.gz

編輯器原因, 上面 > 沒有正確顯示出來

Restore 數(shù)據(jù)

還是參考上面 Dump 的方式,只不過命令行工具改成了 mysql

Python Proxy

多多少少要搞一些爬蟲吧。充分利用云服務(wù)器的IP用來做爬蟲代理。目前發(fā)現(xiàn)最簡(jiǎn)單的爬蟲代理搭建方法:

docker run --name py-proxy -d --restart always -p 8899:8899 abhinavsingh/proxy.py

注意:

  1. 截至目前位置, 這個(gè)docker鏡像的python腳本還比較老,不支持basic auth. 如果需要basic auth, 需要自行更新python文件,并重新docker build才可以。Github地址: https://github.com/abhinavsingh/proxy.py
  2. 在實(shí)際生產(chǎn)之中, 用多了貌似有自動(dòng)無法鏈接的情況。也可能是目標(biāo)網(wǎng)站的問題。
  3. 這個(gè)東東也可以作為瀏覽器SwitchSharp的代理哦, 不過推薦加上https + basic auth. 具體操作請(qǐng)看官方文檔。

Jupyter Notebook

用了一圈, 感覺還是 tensorflow 鏡像自帶的Notebook比較簡(jiǎn)單。 因?yàn)樵趍ount host 目錄的時(shí)候, 沒有奇奇怪怪的權(quán)限問題。bash script 如下:

sudo docker run --name notebook -d --restart always \
 -p 127.0.0.1:8888:8888 \
 -v /path-to-workspace/notebooks:/tf \
 tensorflow/tensorflow:latest-py3-jupyter

如果還需要鏈接Apache Spark等,參考如下Script

sudo docker run --name pyspark-notebook -d \
 --net host --pid host -e TINI_SUBREAPER=true -p 8888:8888 \
 -v /path-to-workspace/notebooks:/tf \
 tensorflow/tensorflow:latest-py3-jupyter

Grafana

ID=$(id -u)
 
docker run \
 -d --restart always \
 -p 3000:3000 \
 --name=grafana \ 
 --user $ID -v /path-to-data/grafana-data:/var/lib/grafana \
 -e "GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource" \
 -e "GF_SECURITY_ADMIN_PASSWORD=aaabbbccc" \
 grafana/grafana 

一些簡(jiǎn)單的解釋:

  • –user $ID 必須要設(shè)置, 否則docker內(nèi)部會(huì)出現(xiàn)permission issue
  • GF_INSTALL_PLUGINS : 安裝一些非自帶的插件
  • GF_SECURITY_ADMIN_PASSWORD : 賬號(hào): admin / aaabbbccc

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • docker容器從入門到癡迷(推薦)

    docker容器從入門到癡迷(推薦)

    這篇文章主要介紹了docker容器從入門到癡迷,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Docker在Ubuntu中的部署全流程

    Docker在Ubuntu中的部署全流程

    本文介紹在Linux操作系統(tǒng)Ubuntu的18.04及以上版本中,配置開源容器化平臺(tái)和工具集Docker的詳細(xì)方法,其中,我們以配置Docker平臺(tái)的核心組件之一Docker Engine為例來詳細(xì)介紹,需要的朋友可以參考下
    2024-03-03
  • 一臺(tái)虛擬機(jī)基于docker搭建大數(shù)據(jù)HDP集群的思路詳解

    一臺(tái)虛擬機(jī)基于docker搭建大數(shù)據(jù)HDP集群的思路詳解

    這篇文章主要介紹了一臺(tái)虛擬機(jī)基于docker搭建大數(shù)據(jù)HDP集群?,本篇文章主要講了大數(shù)據(jù)集群搭建的架構(gòu)設(shè)計(jì)和實(shí)現(xiàn)思路部分,后面文章會(huì)探討上層應(yīng)用的構(gòu)建,需要的朋友可以參考下
    2022-11-11
  • 詳解Docker守護(hù)進(jìn)程的配置及日志

    詳解Docker守護(hù)進(jìn)程的配置及日志

    這篇文章主要介紹了詳解Docker守護(hù)進(jìn)程的配置及日志,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-04-04
  • 如何查看docker-compose.yml所在位置

    如何查看docker-compose.yml所在位置

    這篇文章主要介紹了如何查看docker-compose.yml所在位置問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 使用docker部署hadoop集群的詳細(xì)教程

    使用docker部署hadoop集群的詳細(xì)教程

    這篇文章主要介紹了使用docker部署hadoop集群的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值需要的朋友可以參考下
    2020-09-09
  • 詳解利用Dockerfile構(gòu)建mysql鏡像并實(shí)現(xiàn)數(shù)據(jù)的初始化及權(quán)限設(shè)置

    詳解利用Dockerfile構(gòu)建mysql鏡像并實(shí)現(xiàn)數(shù)據(jù)的初始化及權(quán)限設(shè)置

    本篇文章主要介紹了詳解利用Dockerfile構(gòu)建mysql鏡像并實(shí)現(xiàn)數(shù)據(jù)的初始化及權(quán)限設(shè)置 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • docker的基本使用及使如何用Docker 運(yùn)行D435i

    docker的基本使用及使如何用Docker 運(yùn)行D435i

    這篇文章主要介紹了docker的基本使用及使如何用Docker 運(yùn)行D435i,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-11-11
  • Docker容器時(shí)間與宿主機(jī)不一致/宿主機(jī)時(shí)間不同步校驗(yàn)問題

    Docker容器時(shí)間與宿主機(jī)不一致/宿主機(jī)時(shí)間不同步校驗(yàn)問題

    在Docker容器中,若未單獨(dú)配置localtime,可能導(dǎo)致時(shí)間與宿主機(jī)不一致,例如UTC與CST(東八區(qū))相差8小時(shí),解決方法包括在啟動(dòng)時(shí)通過docker run添加時(shí)間參數(shù),使用Dockerfile設(shè)置,或通過docker-compose配置,對(duì)于已運(yùn)行的容器
    2024-10-10
  • docker配置Runner容器的方法

    docker配置Runner容器的方法

    今天通過本文給大家介紹docker配置Runner容器的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-11-11

最新評(píng)論

八宿县| 肃北| 梧州市| 泉州市| 长乐市| 双峰县| 淅川县| 同仁县| 秦安县| 舞阳县| 高碑店市| 沂水县| 枣庄市| 金平| 隆安县| 宣恩县| 舟山市| 三原县| 泰顺县| 砚山县| 鞍山市| 岳阳市| 高台县| 伊金霍洛旗| 奉新县| 潮安县| 涟水县| 武穴市| 巴彦淖尔市| 拜城县| 宁夏| 留坝县| 乌鲁木齐市| 石棉县| 加查县| 佛学| 济阳县| 启东市| 将乐县| 余干县| 分宜县|