跳至主要内容

(migrated)Docker相关


*  Docker run 命令参数及使用

docker设置容器固定ip

用Docker搭建WordPress博客

armbian装docker+wordpress实现https访问

用Docker部署WordPress

   WordPress连接数据库失败处理方法

* 基于docker搭建自己的个人网站


* 查看Docker容器环境变量

标注说明:

   a. CONTAINER-NAME: 容器名字

   b.  CONTAINER-ID: 容器ID

   用命令 Docker ps -a 可以查到上述信息

有下列3种方式:

  1. Docker inspect

# docker inspect <CONTAINER-NAME> OR <CONTAINER-ID>

如:

# docker inspect WordPressTest1

   2. 用env查看

# docker exec -it <CONTAINER-NAME> OR <CONTAINER-ID> env

如:

# docker exec -it b14df65ecd73 env

   3. 进入容器后用env查看

# docker exec -it <CONTAINER-NAME> OR <CONTAINER-ID> /bin/bash
(容器提示符)# env
如:
# docker exec -it b14df65ecd73 /bin/bash
(容器提示符)# env

另: Docker使用--link参数可以把另一个容器的环境变量连接过来(没有测试), 可以用env查看到


* WordPress的Docker参数

WordPress的Docker需要的参数是从环境变量里取得.
读取代码在wordpress容器里的/var/www/html/wp-config.php文件, 相关的主要代码如下:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', getenv_docker('WORDPRESS_DB_NAME', 'wordpress') );

/** MySQL database username */
define( 'DB_USER', getenv_docker('WORDPRESS_DB_USER', 'example username') );

/** MySQL database password */
define( 'DB_PASSWORD', getenv_docker('WORDPRESS_DB_PASSWORD', 'example password') );

/**
 */

/** MySQL hostname */
define( 'DB_HOST', getenv_docker('WORDPRESS_DB_HOST', 'mysql') );

/** Database Charset to use in creating database tables. */
define( 'DB_CHARSET', getenv_docker('WORDPRESS_DB_CHARSET', 'utf8') );

/** The Database Collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', getenv_docker('WORDPRESS_DB_COLLATE', '') );

可以看到以下环境变量参数:
      WORDPRESS_DB_NAME:              wordpress所用数据库名, 缺省为"wordpress"
      WORDPRESS_DB_USER:               wordpress访问数据库的用户名, 缺省为"example username"
      WORDPRESS_DB_PASSWORD:    wordpress访问数据库的用户密码, 缺省为"example password"
      WORDPRESS_DB_HOST:              wordpress访问的数据库地址端口(ip:port)
      WORDPRESS_DB_CHARSET:        数据库字符集
主要用到前4个参数

* Docker的重启

# 重启docker
# service dockerd restart

# 重启容器,可通过portainer
# 查看容器id和名称
# docker ps -a
# docker restart bc7c8d4514fe
# 或
# docker restart mydb

* 宿主机(即物理机)与docker文件互传

# 宿主机传文件至docker容器
# docker cp 本地文件的路径  container_id:<docker容器内的路径>

# 容器传文件至宿主机
# docker cp container_id:<docker容器内的路径>  <本地保存文件的路径>
# 这里的容器ID可以通过portainer或者命令“docker ps -a ”进行查看

* 容器里安装nano或vim

# apt-get update
# apt-get install nano
# 或
# apt-get install vim

* 容器自动启动

   1.在使用docker run时,添加"--restart=always"参数
   2.运行中的docker使用update时添加"--restart=always"参数
# docker update --restart=always wordpress
"wordpress"是容器名称, 也可以写容器ID.
例:
# docker update --restart=always DB4WordPress
DB4WordPress
# docker update --restart=always WordPress
WordPress
关机重启后, 数据库和wordpress容器都已启动, 确认命令有效.

* Docker镜像源
Docker的镜像配置文件是: /etc/docker/daemon.json, 当前内容是:
{
  "bip": "192.168.30.1/24",
  "data-root": "/opt/docker/",
  "log-level": "warn",
  "log-driver": "json-file",
  "log-opts": {
     "max-size": "10m",
     "max-file": "5"
   },
   "registry-mirrors": [
     "https://dockerhub.azk8s.cn"
   ]
}

* portainer在armbian上安装运行

# (安装应该是使用docker pull: docker pull portainer/portainer-ce)
# 安装使用apt-get
# apt-get install portainer/portainer-ce
# 启动
# docker volume create portainer_data
# docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce


查看某个docker容器占用的ip

# docker inspect openwrt | grep Address
其中“openwrt”是容器的名称

* armbian上安装Docker

参考官网安装说明: Get Docker
一般用官方的shell安装.


* 修改地址(临时, openwrt)

# ifconfig br-lan 172.17.0.3 netmask 255.255.255.0
# 设置网关
route add default gw 172.17.0.1

* Docker搜索镜像(img包)

# docker search 镜像包名, 如:
# docker search hugo
NAME                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
klakegg/hugo                           Minimal image and variants with batteries in…   99                   [OK]
jojomi/hugo                            hugo, see https://gohugo.io                     64                   [OK]
monachus/hugo                          Docker image for building and running Hugo (…   42                   [OK]
publysher/hugo                         Docker base image for static sites generated…   38                   [OK]
jguyomard/hugo-builder                 Lightweight Alpine-Based Docker Image for Hu…   19                   [OK]
cibuilds/hugo                          Docker image for Hugo, the static-site gener…   15                   
fundor333/hugo                         Docker file for build your Hugo for my site …   4                    [OK]
peaceiris/hugo                         Hugo Alpine base Docker Image (Hugo extended…   4                    
solidnerd/hugo                         Hugo in a container                             2                    [OK]
yanqd0/hugo                            The smallest hugo image built from Alpine.      2                    [OK]
muninn/hugo-caddy                      hugo + caddy + caddy hugo admin plugin + cad…   2                    
tarampampam/hugo                       Hugo (gohugo, static stite generator) applic…   1                    [OK]
orus/hugo-builder                      Alpine with hugo, git and pygments installed…   1                    
dettmering/hugo-build                  Build a website with Hugo (gohugo.io)           1                    [OK]
envimate/hugo                          Dockerized version of hugo cli https://gohug…   1                    
chabad360/hugo                         Build a static site with Hugo (includes Hugo…   0                    
vergissberlin/hugo-docker-watchtower   Hugo with continues delivery after commits i…   0                    
simonszu/hugo                          An image for the hugo blog system               0                    [OK]
webhippie/hugo                         Docker images for Hugo                          0                    [OK]
toschwarz/hugo-builder                 Hugo Builder Image                              0                    [OK]
svlentink/hugo                         Official Hugo static web gen. from Github (l…   0                    [OK]
mazgi/hugo-static-website              Docker image for static website by Hugo.        0                    [OK]
sjugge/hugo                            Runs the latest stable Hugo static site gene…   0                    [OK]
forestryio/hugo                                                                        0                    
endocode/hugo-website                                                                  0 
*STARS越多越好(排在越靠前)

评论

此博客中的热门博文

(migrated)联通(数码视讯)Q7电视盒子刷机成功, 但这Q7盒子是真的垃圾!

 一、破解方式       联通(数码视讯)Q7(以下简称Q7)有很多种破解方式:          a. 不拆机破解: 主要通过漏洞是装上可以装App的市场或其他工具          b. TTL破解: 连接TTL线,通过进入底层系统打开adb调试, 再通过其它工具安装App, 如:                        “北京联通盒子-数码视讯Q7-破解"             或者在底层的Linux系统里直接安装App.         c. 使用USB Burn方式刷机: 直接刷成别的系统,如:                   " 【2020年11月】北京联通数码视讯Q7破解教程"                          最后用的是这种方式进行刷机 。          相关的包下载地址:          1) 刷机固件:             链接: https://pan.baidu.com/s/18ukQVyQiScAeQPCReoBr0Q                    提取码:yp6t             里面有个压缩包: 20191218-Q7-4.4.2-root-twrp-...

P3TERX/OpenWrt-Newifi_D2的Actions编译配置文件简单分析

  链接 :  https://github.com/P3TERX/OpenWrt-Newifi_D2 Code 目录结构 : 根目录 : .github/ 目录 : .github /workflows / 目录 : 可能需要修改的文件 : .github /workflows /build-openwrt.yml:    文件及参数设置。 文件中可能修改的部分 : name: Build OpenWrt env:   REPO_URL: https://github.com/coolsnowwolf/lede   #  库地址    #  lean 的 https://github.com/coolsnowwolf/lede.git    # or     #  Lienol 的 https://github.com/Lienol/openwrt )   REPO_BRANCH: master           #  不同分支      #  以 Lienol OpenWrt 源码为例 ,  分支 dev-master  激进; dev-19.07 OpenWrt 官方平稳版; dev-lean-lede    lean 的源码   FEEDS_CONF: feeds.conf.default   CONFIG_FILE: open.config         #  编译配置文件  open.config   DIY_P1_SH: diy-part1.sh   ...

(migrated)联通(数码视讯)Q7盒子再刷Openwrt

说明:     联通(数码视讯)Q7盒子(以下简称Q7)做为一个电视盒子应该是没有什么可取之处, 但还可以做点别的, 比如, 做Openwrt盒子。     恩山论坛 的 flippy大侠 推出了 "55+、55+O S905x3、S922x、贝壳云、我家云、微加云等OP固件" , 是基于 amlogic(晶晨) 的S9xx系列arm SOC的openwrt固件, 现在支持包括基于 amlogic(晶晨)  S922x、S912、S905x、s905x2、S905x3、S905d等多款SOC的盒子。    但是,  flippy大侠 的固件说明中, 并未明确指出对S905L的支持, 而Q7用的SOC是S905L。    查到 维基Amlogic 说明中是这么说的:            Amlogic S905L: 与S905X相似,不同之处在于它支持HDMI 2.0b,但缺少VP9解码,摄像头接口和TS输入。     按这种说法, S905L可能是和S905X差不多, 支持S905X应该就能支持S905L, 那么Q7就应该能用。     推论如此, 然后在网上找到了一个实例,  恩山论坛 的 Len_大侠 在 "联通北京数码Q7,S905L电视盒刷成了openwrt系统路由器" 贴子里, 明确说明他已经成功完成了将Q7刷上了Openwrt, 虽然没有详细说明, 但从帖子里可以看出来大概是怎么做的, 那么, 就跟随 Len_大侠 , 让Q7废物利用吧。     为了简单化(偷懒😁), 选用的是使用 外接存储( U盘或TF卡) 启动 Q7的方式。     Q7自带TF卡槽 , 这倒是为数不多的优点之一。 另:       在 Github 上找了下 flippy大侠 的源码,  感觉应该是这个:  lllrrr/mknop       tuanqing/mknop 这个肯定是分支。 另外,  flippy大侠 还做了 Doc...