docker安裝mtproto及報錯解決方案

2022-05-22 11:12:06 字數 1468 閱讀 4465

安裝docker:curl -ssl | sh

給許可權:usermod -ag docker 【current_user】

啟動:systemctl start docker

驗證(未報錯即成功):docker ps

安裝docker-composer:curl -l /compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

賦執行許可權:chmod +x /usr/local/bin/docker-compose

接下來根據官方文件安裝:

docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest

docker logs mtproto-proxy

結果報錯:

解決方案:

命令換成:docker run --ulimit nofile=90000:90000 -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest

或者:docker run --privileged=true-d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest

原因分析:

大約在0.6版,privileged被引入docker。

使用該引數,container內的root擁有真正的root許可權。

否則,container內的root只是外部的乙個普通使用者許可權。

privileged啟動的容器,可以看到很多host上的裝置,並且可以執行mount。

甚至允許你在docker容器中啟動docker容器。

最終選擇的帶指定sceret命令:docker run --ulimit nofile=90000:90000 -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data-e secret=00baadf00d15abad1deaa51sbaadcafetelegrammessenger/proxy:latest

ps:secret: 使用者金鑰。必須為 32 個字元,僅可包含09af之間的字元,可以用openssl rand -hex 16命令生成

docker安裝與docker安裝nginx

主要是部署速度的不同,dockers較快,是秒級,而虛擬機器很慢,至少10s以上 docker部署專案將會更快更好 step 1 安裝必要的一些系統工具 step 2 新增軟體源資訊 sudo yum config manager add repo step 3 更新並安裝 docker ce su...

Docker系列 docker安裝

docker的安裝和使用有一些前提條件,主要體現在體系架構和核心的支援上。對於體系架構,除了docker一開始就支援的x86 64,其他體系架構的支援則一直在不斷地完善和推進中。docker分為ce和ee兩大版本。ce即社群版 免費,支援週期7個月 ee即企業版,強調安全,付費使用,支援週期24個月...

docker學習 docker安裝

1 解除安裝已經存在的docker 執行命令 yum remove docker docker client docker client latest docker common docker latest docker latest logrotate docker logrotate docke...