1. 程式人生 > 實用技巧 >pycham新增qt-designer與pyuic

pycham新增qt-designer與pyuic


title: docker入門
tags:

  • docker
    categories:
  • docker
    abbrlink: 37956
    date: 2020-08-29 18:32:34

docker入門

docker安裝

安裝步驟

yum install -y epel-release
yum install -y docker-io
/etc/sysconfig/docker
// 7
yum install -y yum-utils device-mapper-persistent-data lvm2

systemctl daemon-reload
systemctl restart docker
{
  "registry-mirrors": ["https://c0iennz9.mirror.aliyuncs.com"]
}

常用命令(本地)

docker images -a顯示所有映象 -q查詢id
--digests 顯示摘要資訊 --no-trunc顯示完整的映象資訊
docker search -s 檢視star大於某值的映象
--automated
docker pull xxx xxx 可單個可多個刪除 -f強制刪除
# docker rmi -f ${docker images -q}
docker run -it xxx   -i表示互動 -t表示偽終端 --name newname oldname表示起別名 -d守護(後臺執行) -p 8080:8080 埠對映 -P表示隨機分配(需要在ps裡面看埠)
   使用exit停止 ctrl+P+Q退出不停止
   停了之後開啟是 start
docker ps 列出當前執行的所有容器 -a所有的(包括歷史) -l上次 -n xx 上幾次的
start stop restart kill
docker rm刪除執行的例項(rmi為刪除對應的映象,必須先刪除所有例項)

# docker ps -a | grep hello-world | awk '{print $1}' | xargs docker rm
#  docker run -d hello-world /bin/sh -c 'while true;do echo hello;sleep 3;done'
docker logs -t -f --tail
#檢視容器內程序
docker top id
docker inspect id
#重新進入已啟動的容器內
docker attach id
docker exec id your_want_commands(run in repo) 可以用-it 等run命令
# docker exec -it id /bin/bash
docker cp 拷貝檔案  docker cp id:/tmp/filename /targetpath/targetfile

常用命令(上傳)

docker commit -a="author" -m="commit message" id new_name:tagname
# 檔案對映,兩邊資料共享(即便容器關閉也共享)
docker run -it -v /host/filepath:/container/filepath id
# 許可權相關操作暫無,後續補充
sudo docker run -itd -p 3308:3306  --privileged --name myCentos centos   /usr/sbin/init

dockerFile

docker build -f /home/docker/dockerfile-test -t mycentos .
可選:--privileged=true
--volumes-form origin_container # 繼承卷,用於實現資料共享

每條保留字必須為大寫且必須存在引數,指令為從上倒下執行,每個指令都會建立一個映象

  • FROM scratch(最源映象)
  • MAINTAINER 作者和映象描述
  • RUN 構建時的命令
  • EXPOSE 開放的埠號
  • WORKDIR 預設終端的登陸目錄,一個落腳點
  • ENV 環境變數 ENV MY_PATH /use/mytest -> WORKDIR $MY_PATH
  • ADD 與COPY ,ADD包括解壓縮功能
  • VOLUME 建立容器卷
  • CMD 指定執行命令,只有一個生效,且會被docker run裡面的引數替換
  • ENTRYPOINT 會在docker run追加
  • ONBULID 被繼承的dockerfile,父映象在被子映象繼承後,父映象的ONBULID會被觸發
  • USER
FROM centos
ENV MY_PATH /tmp
WORKDIR $MY_PATH
RUN yum -y install vim
EXPOSE 80
CMD /bin/bash
# docker history images_id
docker build -f dockerfile_path -t images_name .

修改mysql預設路徑
為了方便日後管理,以及初始化資料庫,重新設定mysql的data路徑

mkdir  -p /home/data
mkdir  -p /home/logs
chown -R mysql:mysql /home/data
chown -R mysql:mysql /home/logs
chmod -R 755 /home
chmod -R 755 /home/data
chmod -R 755 /home/logs
1234567

4、修改mysql配置檔案

cd /etc/mysql/
vi my.cnf
12

配置檔案中在[mysqld]下增加

[mysqld]
datadir=/home/data
log-error=/home/logs/error.log
lower_case_table_names=1

注意:該操作完成後千萬不要重啟docker,否則將無法啟動

5、重新初始化資料庫

/usr/sbin/mysqld --user=mysql --lower-case-table-names=1 --initialize-insecure --basedir=/usr/local/mysql --datadir=/home/data

這裡要等待一段時間
初始化完成後可以檢視日誌,主要預設的root密碼為空。

vi /home/logs/error.log

該步驟完成後,重啟docker,如果沒有失敗說明設定已經生效。

show variables like '%table_names'

新增使用者
由於預設初始化的’root’@‘localhost’ 使用者是不能遠端訪問的。
如果想建立一個遠端訪問的root使用者可以使用建立語句進行建立

mysql> CREATE USER 'root'@'%' IDENTIFIED BY '密碼';
mysql> GRANT ALL ON *.* TO 'root'@'%'  WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
#備份資料庫
docker exec 49ed5fefc54e mysqldump --all-databases  -u root -p123456 > mysql.sql