整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          部署lnmp環(huán)境,安裝typecho博客

          部署lnmp環(huán)境,安裝typecho博客

          裝nginx和PHP環(huán)境


          root@cby:~# apt install nginx php7.4 php7.4-mysql php7.4-fpm


          修改nginx配置文件

          root@cby:~# vim /etc/nginx/sites-available/default
          root@cby:~# cat /etc/nginx/sites-available/default
          server {
                  listen 80;
                  listen [::]:80;
                  
                  #填寫域名或者IP
                  server_name www.oiox.cn; 
          
          
                  # SSL configuration
                  #
                  
                  #開啟ssl證書監(jiān)聽端口
                  listen 443 ssl; 
                  listen [::]:443;
                  
                  #配置證書
                  ssl_certificate /var/www/ssl/www.oiox.cn_nginx/www.oiox.cn_bundle.pem; 
                  ssl_certificate_key /var/www/ssl/www.oiox.cn_nginx/www.oiox.cn.key;
                  ssl_session_timeout  5m;
                  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
                  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
                  ssl_prefer_server_ciphers on;
          
          
                  root /var/www/html;
          
          
                  # 配置默認(rèn)訪問(wèn)頁(yè)面
                  index index.php index.html index.htm index.nginx-debian.html;
          
          
                  #配置訪問(wèn)路徑
                  location / {
                          # First attempt to serve request as file, then
                          # as directory, then fall back to displaying a 404.
                          try_files $uri $uri/=404;
                  }
                  
                  # 配置跳轉(zhuǎn)路由
                  if (-f $request_filename/index.html) {
                  rewrite (.*) $1/index.html break;
                  }
                  if (-f $request_filename/index.php) {
                  rewrite (.*) $1/index.php;
                  }
                  if (!-f $request_filename) {
                  rewrite (.*) /index.php;
                  }
          
          
                  #配置PHP訪問(wèn)路由
                  location ~ \.php$ {
                          include snippets/fastcgi-php.conf;
          
          
                          # With php-fpm (or other unix sockets):
                          fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
                          # With php-cgi (or other tcp sockets):
                          #fastcgi_pass 127.0.0.1:9000;
                          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                          include        fastcgi_params;
                          fastcgi_intercept_errors  on;
                  }
          }
          
          
          
          
          # 配置其他的域名訪問(wèn)
          server {
                  listen 80;
                  listen [::]:80;
          
          
                  server_name aliyun.chenby.cn;
          
          
                  root /var/www/cby;
                  index index.html;
          
          
                  location / {
                          try_files $uri $uri/=404;
                  }
          }
          root@cby:~#


          啟動(dòng)服務(wù)并設(shè)置開機(jī)自啟

          root@cby:~# nginx -t 
          root@cby:~# systemctl restart nginx 
          
          
          
          
          root@cby:~# systemctl  enable php7.4-fpm
          Synchronizing state of php7.4-fpm.service with SysV service script with /lib/systemd/systemd-sysv-install.
          Executing: /lib/systemd/systemd-sysv-install enable php7.4-fpm
          root@cby:~# 
          root@cby:~# 
          root@cby:~# systemctl  enable nginx
          Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
          Executing: /lib/systemd/systemd-sysv-install enable nginx
          root@cby:~#


          安裝docker,并使用docker啟動(dòng)MySQL服務(wù)

          root@cby:~# curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
          
          
          root@cby:~# mkdir /mysql 
          root@cby:~# cd /mysql
          root@cby:/mysql# docker run -p 3306:3306 --name mymysql --restart=always -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL\_ROOT\_PASSWORD=Cby123.. -d mysql:5.7
          
          
          
          
          #登錄MySQL數(shù)據(jù)庫(kù)執(zhí)行創(chuàng)建數(shù)據(jù)庫(kù)
          create database typecho;


          部署typecho

          root@cby:~# cd /var/www/html/
          root@cby:/var/www/html# wget https://typecho.org/downloads/1.1-17.10.30-release.tar.gz
          root@cby:/var/www/html# tar xvf 1.1-17.10.30-release.tar.gz 
          root@cby:/var/www/html# mv build/* .



          Linux運(yùn)維交流社區(qū) Linux運(yùn)維交流社區(qū),互聯(lián)網(wǎng)新聞以及技術(shù)交流。 75篇原創(chuàng)內(nèi)容 -->

          公眾號(hào)


          https://blog.csdn.net/qq_33921750

          https://my.oschina.net/u/3981543

          https://www.zhihu.com/people/chen-bu-yun-2

          https://segmentfault.com/u/hppyvyv6/articles

          https://juejin.cn/user/3315782802482007

          https://space.bilibili.com/352476552/article

          https://cloud.tencent.com/developer/column/93230

          https://www.jianshu.com/u/0f894314ae2c

          https://www.toutiao.com/c/user/token/MS4wLjABAAAAeqOrhjsoRZSj7iBJbjLJyMwYT5D0mLOgCoo4pEmpr4A/

          知乎、CSDN、開源中國(guó)、思否、掘金、嗶哩嗶哩、騰訊云、簡(jiǎn)書、

          、概述

          作為接替Docker運(yùn)行時(shí)的Containerd在早在Kubernetes1.7時(shí)就能直接與Kubelet集成使用,只是大部分時(shí)候我們因熟悉Docker,在部署集群時(shí)采用了默認(rèn)的dockershim。在V1.24起的版本的kubelet就徹底移除了dockershim,改為默認(rèn)使用Containerd了,當(dāng)然也可以使用 cri-dockerd 適配器來(lái)將 Docker Engine 與 Kubernetes 集成。可以參考容器運(yùn)行時(shí) | Kubernetes。

          二、Containerd 常見命令操作

          更換Containerd后,以往我們常用的docker命令也不再使用,取而代之的分別是 crictlctr 兩個(gè)命令客戶端。

          • crictl 是遵循CRI接口規(guī)范的一個(gè)命令行工具,通常用它來(lái)檢查和管理kubelet節(jié)點(diǎn)上的容器運(yùn)行時(shí)和鏡像。
          • ctrcontainerd 的一個(gè)客戶端工具。
          • ctr -v 輸出的是 containerd 的版本,crictl -v 輸出的是當(dāng)前 k8s 的版本,從結(jié)果顯而易見你可以認(rèn)為 crictl 是用于 k8s 的。
          • 一般來(lái)說(shuō)你某個(gè)主機(jī)安裝了 k8s 后,命令行才會(huì)有 crictl 命令。而 ctr 是跟 k8s 無(wú)關(guān)的,你主機(jī)安裝了 containerd 服務(wù)后就可以操作 ctr 命令。

          使用crictl命令之前,需要先配置/etc/crictl.yaml如下:

          runtime-endpoint: unix:///run/containerd/containerd.sock
          image-endpoint: unix:///run/containerd/containerd.sock
          timeout: 10
          debug: false

          也可以通過(guò)命令進(jìn)行設(shè)置:

          crictl config runtime-endpoint unix:///run/containerd/containerd.sock
          crictl config image-endpoint unix:///run/containerd/containerd.sock
          

          命令

          docker

          ctr(containerd)

          crictl(kubernetes)

          查看運(yùn)行的容器

          docker ps

          ctr task ls/ctr container ls

          crictl ps

          查看鏡像

          docker images

          ctr image ls

          crictl images

          查看容器日志

          docker logs

          無(wú)

          crictl logs

          查看容器數(shù)據(jù)信息

          docker inspect

          ctr container info

          crictl inspect

          查看容器資源

          docker stats

          無(wú)

          crictl stats

          啟動(dòng)/關(guān)閉已有的容器

          docker start/stop

          ctr task start/kill

          crictl start/stop

          運(yùn)行一個(gè)新的容器

          docker run

          ctr run

          無(wú)(最小單元為pod)

          打標(biāo)簽

          docker tag

          ctr image tag

          無(wú)

          創(chuàng)建一個(gè)新的容器

          docker create

          ctr container create

          crictl create

          導(dǎo)入鏡像

          docker load

          ctr image import

          無(wú)

          導(dǎo)出鏡像

          docker save

          ctr image export

          無(wú)

          刪除容器

          docker rm

          ctr container rm

          crictl rm

          刪除鏡像

          docker rmi

          ctr image rm

          crictl rmi

          拉取鏡像

          docker pull

          ctr image pull

          ctictl pull

          推送鏡像

          docker push

          ctr image push

          無(wú)

          登錄或在容器內(nèi)部執(zhí)行命令

          docker exec

          無(wú)

          crictl exec

          清空不用的容器

          docker image prune

          無(wú)

          crictl rmi --prune

          更多命令操作,可以直接在命令行輸入命令查看幫助。

          docker --help
          ctr --help
          crictl --help
          

          由于Containerd也有namespaces的概念,對(duì)于上層編排系統(tǒng)的支持,ctr 客戶端 主要區(qū)分了3個(gè)命名空間分別是k8s.iomobydefault,以上我們用crictl操作的均在k8s.io命名空間,使用ctr 看鏡像列表就需要加上-n參數(shù)。crictl是只有一個(gè)k8s.io命名空間,但是沒有-n參數(shù)。

          【溫馨提示】ctr images pull 拉取的鏡像默認(rèn)放在default,而crictl pull 和 kubelet 默認(rèn)拉取的鏡像都在k8s.io命名空間下。所以通過(guò)ctr導(dǎo)入鏡像的時(shí)候特別注意一點(diǎn),最好指定命名空間。

          # 注意-n不能放在命令最后面,下面幾行查看的鏡像是一樣的
          ctr -n=k8s.io image ls
          ctr -n k8s.io image ls
          
          # crictl 沒有-n參數(shù),操作都在`k8s.io`命名空間下。
          crictl image ls
          crictl images
          # crictl image list=ctr -n=k8s.io image list
          # crictl image ls=ctr -n=k8s.io image ls
          # crictl images=ctr -n=k8s.io image list
          # crictl images=ctr -n=k8s.io image ls
          
          # 使用ctr命令指定命名空間導(dǎo)入鏡像
          ctr -n=k8s.io image import dashboard.tar
          
          #查看鏡像,可以看到可以查詢到了
          crictl images
          

          三、container 客戶端工具 nerdctl

          推薦使用nerdctl,使用效果與docker命令的語(yǔ)法一致
          github下載鏈接:https://github.com/containerd/nerdctl/releases

          • 精簡(jiǎn) (nerdctl--linux-amd64.tar.gz): 只包含nerdctl
          • 完整 (nerdctl-full--linux-amd64.tar.gz): 包含 containerd, runc, and CNI等依賴

          nerdctl 的目標(biāo)并不是單純地復(fù)制 docker 的功能,它還實(shí)現(xiàn)了很多 docker 不具備的功能,例如延遲拉取鏡像(lazy-pulling)、鏡像加密(imgcrypt)等。具體看nerdctl。


          延遲拉取鏡像功能可以參考這篇文章:Containerd 使用 Stargz Snapshotter 延遲拉取鏡像 – 云原生實(shí)驗(yàn)室 - Kubernetes|Docker|Istio|Envoy|Hugo|Golang|云原生

          1)安裝 nerdctl(精簡(jiǎn)版)

          wget https://github.com/containerd/nerdctl/releases/download/v0.22.2/nerdctl-0.22.2-linux-amd64.tar.gz
          # 解壓
          tar -xf nerdctl-0.22.2-linux-amd64.tar.gz
          
          ln -s /opt/k8s/nerdctl/nerdctl /usr/local/bin/nerdctl
          

          2)安裝 nerdctl(完整版,這里不裝)

          wget https://github.com/containerd/nerdctl/releases/download/v0.22.2/nerdctl-full-0.22.2-linux-amd64.tar.gz
          tar -xf nerdctl-full-0.16.0-linux-amd64.tar.gz -C /usr/local/
          
          cp /usr/local/lib/systemd/system/*.service /etc/systemd/system/
          

          啟動(dòng)服務(wù)buildkit

          systemctl enable  buildkit containerd --now
          systemctl status buildkit containerd
          

          3)安裝 buildkit 支持構(gòu)建鏡像

          buildkit GitHub地址: https://github.com/moby/buildkit

          使用精簡(jiǎn)版 nerdctl無(wú)法直接通過(guò)containerd構(gòu)建鏡像,需要與buildkit組全使用以實(shí)現(xiàn)鏡像構(gòu)建。當(dāng)然你也可以安裝上面的完整nerdctl;buildkit項(xiàng)目是Docker公司開源出來(lái)的一個(gè)構(gòu)建工具包,支持OCI標(biāo)準(zhǔn)的鏡像構(gòu)建。它主要包含以下部分:

          • 服務(wù)端buildkitd,當(dāng)前支持runc和containerd作為worker,默認(rèn)是runc;
          • 客戶端buildctl,負(fù)責(zé)解析Dockerfile,并向服務(wù)端buildkitd發(fā)出構(gòu)建請(qǐng)求。

          buildkit是典型的C/S架構(gòu),client和server可以不在一臺(tái)服務(wù)器上。而nerdctl在構(gòu)建鏡像方面也可以作為buildkitd的客戶端。

          # https://github.com/moby/buildkit/releases
          wget https://github.com/moby/buildkit/releases/download/v0.10.4/buildkit-v0.10.4.linux-amd64.tar.gz
          
          tar -xf buildkit-v0.10.4.linux-amd64.tar.gz  -C /usr/local/
          

          配置buildkit的啟動(dòng)文件,可以從這里下載:https://github.com/moby/buildkit/tree/master/examples/systemd
          buildkit需要配置兩個(gè)文件

          • /usr/lib/systemd/system/buildkit.socket
          cat > /usr/lib/systemd/system/buildkit.socket <<EOF
          [Unit]
          Description=BuildKit
          Documentation=https://github.com/moby/buildkit
          [Socket]
          ListenStream=%t/buildkit/buildkitd.sock
          SocketMode=0660
          [Install]
          WantedBy=sockets.target
          EOF
          
          • /usr/lib/systemd/system/buildkit.service
          cat > /usr/lib/systemd/system/buildkit.service << EOF
          [Unit]
          Description=BuildKit
          Requires=buildkit.socket
          After=buildkit.socket
          Documentation=https://github.com/moby/buildkit
          [Service]
          # Replace runc builds with containerd builds  
          ExecStart=/usr/local/bin/buildkitd --addr fd://
          [Install]
          WantedBy=multi-user.target
          EOF
          

          啟動(dòng)buildkit

          systemctl daemon-reload
          systemctl enable buildkit --now
          

          四、實(shí)戰(zhàn)操作

          1)修改containerd配置文件

          可以參考我之前的文章:【云原生.大數(shù)據(jù)】鏡像倉(cāng)庫(kù)Harbor對(duì)接MinIO對(duì)象存儲(chǔ)

          containerd config default > /etc/containerd/config.toml

          配置如下:

          [plugins."io.containerd.grpc.v1.cri".registry]
                config_path=""
          
                [plugins."io.containerd.grpc.v1.cri".registry.auths]
          
                [plugins."io.containerd.grpc.v1.cri".registry.configs]
                  [plugins."io.containerd.grpc.v1.cri".registry.configs."myharbor-minio.com".tls]
                    insecure_skip_verify=true  #跳過(guò)認(rèn)證
                    ca_file="/etc/containerd/myharbor-minio.com/ca.crt"
                  [plugins."io.containerd.grpc.v1.cri".registry.configs."myharbor-minio.com".auth]
                    username="admin"
                    password="Harbor12345"
          
                [plugins."io.containerd.grpc.v1.cri".registry.headers]
          
                [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
                  [plugins."io.containerd.grpc.v1.cri".registry.mirrors."myharbor-minio.com"]
                    endpoint=["https://myharbor-minio.com"]


          重啟containerd

          #重新加載配置
          systemctl daemon-reload
          #重啟containerd
          systemctl restart containerd

          注意:這個(gè)配置文件是給crictlkubelet使用,ctr是不可以用這個(gè)配置文件的,ctr 不使用 CRI,因此它不讀取plugins."io.containerd.grpc.v1.cri"配置。

          2)ctr 拉取推送鏡像

          # 推送鏡像到harbor
          ctr --namespace=k8s.io images push myharbor-minio.com/bigdata/minio:2022.8.22-debian-11-r0 --skip-verify --user admin:Harbor12345
          
          # --namespace=k8s.io 指定命名空間,不是必須,根據(jù)環(huán)境而定
          # --skip-verify 跳過(guò)認(rèn)證
          # --user 指定harbor用戶名及密碼
          
          ctr  images pull --user admin:Harbor12345  --tlscacert=/etc/containerd/myharbor-minio.com/ca.crt myharbor-minio.com/bigdata/minio:2022.8.22-debian-11-r0
          

          不想-u user:password每次必須使用 ctr pull/ctr push, 可以使用nerdctl

          3)鏡像構(gòu)建

          cat > Dockerfile <<EOF
          FROM nginx:alpine
          RUN echo 'Hello Nerdctl From Containerd' > /usr/share/nginx/html/index.html
          EOF

          然后在文件所在目錄執(zhí)行鏡像構(gòu)建命令:

          # 不加-n指定命名空間,crictl看不到,kubelet也不能使用它,默認(rèn)在default命名空間下
          nerdctl -n k8s.io build -t nginx:nerctl -f ./Dockerfile . 
          ### 參數(shù)解釋
          # -t:指定鏡像名稱
          # . :當(dāng)前目錄Dockerfile
          # -f:指定Dockerfile路徑
          #  --no-cache:不緩存

          4)打標(biāo)簽 tag

          # crictl沒有tag命令,只能使用nerdctl和ctr,必須指定命名空間,要不然kubelet無(wú)法使用。
          ctr -n k8s.io i tag 
          nerdctl -n k8s.io tag nginx:nerctl myharbor-minio.com/bigdata/nginx:nerctl
          # ctr -n k8s.io tag nginx:nerctl myharbor-minio.com/bigdata/nginx:nerctl
          # 查看鏡像
          nerdctl  -n k8s.io  images myharbor-minio.com/bigdata/nginx:nerctl

          5)將鏡像推送到 Harbor

          第一種情況:http方式,配置如下:

          # 以下兩個(gè)哪個(gè)都可以
          # mkdir -p /etc/docker/certs.d/myharbor-minio.com:443
          mkdir -p /etc/containerd/certs.d/myharbor-minio.com:443
          
          cat > /etc/containerd/certs.d/myharbor-minio.com\:443/hosts.toml <<EOF
          server="https://docker.io"
          
          [host."http://myharbor-minio.com:80"]
            capabilities=["pull", "resolve","push"]
            #skip_verify=true
            #ca="ca.crt"   #相對(duì)路徑
            #ca="/opt/auth/ca.crt"  #絕對(duì)路徑
            #ca=["/opt/auth/ca.crt"]
            #ca=["ca.crt"]
            #client=[["/opt/auth/nginx.cclinux.cn.crt", "/opt/auth/nginx.cclinux.cn.key"]]
          
          EOF

          第一種情況:https方式,配置如下:

          # 以下兩個(gè)哪個(gè)都可以
          # mkdir -p /etc/docker/certs.d/myharbor-minio.com:443
          mkdir -p /etc/containerd/certs.d/myharbor-minio.com:443
          
          cat > /etc/containerd/certs.d/myharbor-minio.com\:443/hosts.toml <<EOF
          server="https://docker.io"
          
          [host."https://myharbor-minio.com:443"]
            capabilities=["pull", "resolve","push"]
            skip_verify=true
            #ca="ca.crt"   #相對(duì)路徑
            #ca="/opt/auth/ca.crt"  #絕對(duì)路徑
            #ca=["/opt/auth/ca.crt"]
            ca=["/etc/containerd/myharbor-minio.com/ca.crt"]
            #client=[["/opt/auth/nginx.cclinux.cn.crt", "/opt/auth/nginx.cclinux.cn.key"]]
          EOF

          通過(guò) nerdctl 登錄 harbor

          echo Harbor12345 | nerdctl login --username "admin" --password-stdin  myharbor-minio.com:443
          
          # nerdctl login --username "admin" --password Harbor12345 myharbor-minio.com:443
          
          # 登出
          # nerdctl logout

          開始將鏡像推送到harbor

          ### 推送到Harbor
          # --insecure-registry        skips verifying HTTPS certs, and allows falling back to plain HTTP
          nerdctl --insecure-registry --namespace=k8s.io push myharbor-minio.com/bigdata/nginx:nerctl
          # ctr --namespace=k8s.io images push myharbor-minio.com/bigdata/nginx:nerctl --skip-verify --user admin:Harbor12345
          
          # --namespace=k8s.io 指定命名空間,跟-n一樣,不是必須,根據(jù)環(huán)境而定
          # --skip-verify 跳過(guò)認(rèn)證
          # --user 指定harbor用戶名及密碼

          Containerd ctr,crictl,nerdctl 客戶端命令介紹與實(shí)戰(zhàn)操作就到這里了,有疑問(wèn)的小伙伴歡迎給我留言哦,后續(xù)文章更精彩,請(qǐng)耐心等待~

          早,一堆營(yíng)銷圈友,頻繁轉(zhuǎn)發(fā)一張帶圖二維碼,來(lái)源是一個(gè)叫HOW的平臺(tái)

          幾個(gè)大字,特別醒目:掃碼加入HOW,問(wèn)答還能賺現(xiàn)金。

          特別激動(dòng),不止為了賺現(xiàn)金。我連續(xù)一周,都在鉆研用戶體驗(yàn)中的“游戲化設(shè)計(jì)”主題。被我逮到一個(gè)活生生案例。那必須是不能放過(guò)的!

          要研究它,所有的流程都必須走一遍。

          很簡(jiǎn)單,在平臺(tái)上,用戶通過(guò)提問(wèn)、回答、分享好友等動(dòng)作,都能獲得金幣,并且可以馬上提現(xiàn)

          而目前,大多數(shù)人,都在以“擼羊毛”為噱頭,分享拉好友,獲得金幣。

          那我也依葫蘆畫瓢唄!

          有意思的是,這一操作,再一次讓人認(rèn)為我進(jìn)入“傳銷組織”,被盜號(hào)了

          但結(jié)果不錯(cuò),不到一個(gè)早上,我通過(guò)發(fā)兩個(gè)圈兒,已經(jīng)賺了接近20元

          我來(lái)跟你好好說(shuō)下這個(gè)“How”平臺(tái)。

          APP提示不能下載,小程序玩得賊拉六

          第一步,我摸到了它的官網(wǎng),這個(gè)由上海顏論信息科技有限公司打造的平臺(tái),給自己定位為“淘寶版知乎、消費(fèi)類分答”。

          說(shuō)自己厭煩了淘寶搜索和毫無(wú)營(yíng)養(yǎng)權(quán)威的測(cè)評(píng)人,相信通過(guò)物質(zhì)可以找到人與人的共鳴,一起探索全新的消費(fèi)模型3.0。



          從特色上看,這是一個(gè)包羅萬(wàn)象、承接十萬(wàn)個(gè)為什么的平臺(tái)。它新潮、特立獨(dú)行。

          度娘上說(shuō):它將問(wèn)答和迅時(shí)購(gòu)買相結(jié)合,結(jié)束傳統(tǒng)清單式的按圖索驥,并整合各領(lǐng)域達(dá)人,為app用戶的每一個(gè)問(wèn)題,提供一站式多維度解決方案。

          這是披著“問(wèn)答平臺(tái)”的“社交電商”?

          嗯,說(shuō)得很棒。我準(zhǔn)備下載APP。

          結(jié)果↓↓

          APP不可用?

          為什么呢,你猜猜看唄?

          你還可以試試,當(dāng)你點(diǎn)擊分享問(wèn)題時(shí), 并不能分享到朋友圈,只能發(fā)好友。wx粑粑的淫威不小。

          How平臺(tái)在分享上,有點(diǎn)收斂的意思。

          這個(gè)我就暫且不談,來(lái)說(shuō)說(shuō)它的游戲化設(shè)計(jì)。

          How是如何進(jìn)行“游戲化設(shè)計(jì)”的?

          從小程序入手。

          其實(shí),游戲化設(shè)計(jì)你早就見過(guò)無(wú)數(shù)次,甚至天天使用。從商超會(huì)員系統(tǒng)到社區(qū)成長(zhǎng)體系,一系列積分、徽章、排行榜等游戲元素,你早就體驗(yàn)過(guò)游戲化的產(chǎn)品了。

          什么是游戲化設(shè)計(jì)?

          定義為“ 在非游戲情境中,使用游戲元素和游戲設(shè)計(jì)技術(shù)”。

          具體說(shuō)來(lái), “游戲化設(shè)計(jì)”是想讓用戶參與實(shí)驗(yàn)(設(shè)計(jì)好的游戲化情景,你也可以簡(jiǎn)單理解為產(chǎn)品的場(chǎng)景),通過(guò)用戶自己的努力獲得成果(獎(jiǎng)勵(lì),等級(jí),社交獎(jiǎng)賞,成長(zhǎng)等)。

          使用一系列連貫的觸點(diǎn)(即用戶和服務(wù)發(fā)生交集的點(diǎn))設(shè)計(jì),讓用戶行為貫穿整個(gè)業(yè)務(wù)流程,獲得完整的用戶成長(zhǎng)體驗(yàn)的過(guò)程。



          在這個(gè)過(guò)程中,用戶會(huì)更容易進(jìn)入心流的狀態(tài),也會(huì)在不斷的自我突破中,獲得高峰體驗(yàn)。

          游戲化有四大特征:

          目標(biāo):要玩家做啥?

          * 玩家努力達(dá)成的具體結(jié)果

          * 為游戲活動(dòng)注入可量化的結(jié)果

          * 吸引玩家注意力,不斷調(diào)整來(lái)保持其參與度

          規(guī)則:玩家要怎么做能達(dá)到目標(biāo)?

          * 為玩家如何實(shí)現(xiàn)目標(biāo)作出限制

          * 用來(lái)規(guī)范玩家的行為,使游戲可控

          * 推動(dòng)玩家去探索此前未知的可能空間,激發(fā)玩家的創(chuàng)造力和策略思維

          反饋:在完成目標(biāo)的過(guò)程中,你給到啥反饋

          * 告知玩家當(dāng)前狀態(tài)及與目標(biāo)的距離

          * 是玩家獲得交互操控感與滿足感的來(lái)源

          * 是對(duì)游戲行為正確或錯(cuò)誤程度的反映,通常通過(guò)點(diǎn)數(shù)、級(jí)別、得分、進(jìn)度條等形式體現(xiàn)

          自愿參與:必須的啊 你強(qiáng)迫得來(lái)么?

          * 要求玩家都自愿接受上述的目標(biāo)、規(guī)則與反饋

          * 任意參與和離去的自由是為了保證玩家把游戲中設(shè)計(jì)的高壓挑戰(zhàn)視作安全且愉快的活動(dòng)

          一個(gè)優(yōu)秀的游戲,通常是在一套相對(duì)合理的規(guī)則下,不斷調(diào)整目標(biāo),通過(guò)實(shí)時(shí)反饋引導(dǎo)玩家能力提升,來(lái)達(dá)心流體驗(yàn)。

          How平臺(tái)符合。它是怎么利用游戲化設(shè)計(jì)流程,融入游戲化思維的呢?我來(lái)嘗試復(fù)盤how的邏輯。

          how平臺(tái)的游戲化設(shè)計(jì)邏輯

          一、 明確業(yè)務(wù)目標(biāo)

          不是使命價(jià)值觀,就是要明確游戲化系統(tǒng)針對(duì)的特定目標(biāo),是提高滿意度,吸引新用戶、提高用戶留存率,還是其他?

          很明顯,how平臺(tái)目前階段的目標(biāo)是:裂變拉新,提高用戶活躍度

          二、劃定目標(biāo)行為

          我希望我的用戶要做啥?還要設(shè)計(jì)出如何衡量他們行為的方式。簡(jiǎn)單說(shuō)來(lái),就是你要用戶做啥,做了用戶能得到啥。

          how太清晰了,就是讓用戶在平臺(tái)上分享、提問(wèn)、回答,獲得的金幣就是錢。

          三、明確用戶畫像

          按角色來(lái)劃分用戶,且用戶可以同時(shí)是多個(gè)角色。目前的角色有:提問(wèn)方、回答方、純分享方、平臺(tái)方。不同角色各自的訴求,我嘗試梳理一下:

          提問(wèn)方:對(duì)職場(chǎng)、情場(chǎng)、穿搭、送禮、購(gòu)物等的全方位問(wèn)題,希望得到高價(jià)值的回答

          回答方:對(duì)自身專業(yè)領(lǐng)域有回答意愿的人群

          純分享方:不回答、不提問(wèn),單純過(guò)來(lái)擼羊毛的人

          平臺(tái)方:用戶活躍、平臺(tái)變現(xiàn)

          四、 明晰的活動(dòng)回路

          用戶的活動(dòng),由動(dòng)機(jī)產(chǎn)生,當(dāng)活動(dòng)結(jié)果獲得正向反饋后,又會(huì)產(chǎn)生新動(dòng)力。

          反饋和動(dòng)機(jī)構(gòu)成了用戶行為的兩個(gè)關(guān)系因素。好的游戲化設(shè)計(jì),用戶會(huì)隨時(shí)知道自己行為的結(jié)果,獲得及時(shí)反饋。

          分析下how平臺(tái)活動(dòng)回路的內(nèi)外兩個(gè)邏輯:

          外部邏輯

          通過(guò)引導(dǎo)用戶進(jìn)行簽到、回答、提問(wèn)、分享等動(dòng)作,獲得平臺(tái)金幣,并可實(shí)時(shí)提現(xiàn)。50金幣為0.5元。

          具體邏輯梳理如下,非常簡(jiǎn)單粗暴。



          內(nèi)部邏輯

          * 1、內(nèi)/外部動(dòng)機(jī)

          外部動(dòng)機(jī):指的是如酬勞、分?jǐn)?shù)、獎(jiǎng)賞、盡義務(wù)和得到贊揚(yáng)等,有明顯外部驅(qū)動(dòng)的因素。

          how給用戶的外部動(dòng)機(jī)是什么?

          一方面,是酬勞。通過(guò)行動(dòng),可以獲得金幣,實(shí)際性收入;包括前期平臺(tái)紅利期,想快速擼羊毛、占便宜的心理(分享鏈接有人掃碼即可獲得返現(xiàn))

          另一方面,是盡義務(wù)就能得到贊揚(yáng)。優(yōu)質(zhì)提問(wèn)和回答,可獲得首頁(yè)推薦,滿足用戶求表?yè)P(yáng)的心理。

          內(nèi)部動(dòng)機(jī):自我決定理論將人的內(nèi)在的需求,分為三類:

          * 能力需求(掌控力):我在某個(gè)領(lǐng)域很牛逼,我想展示出來(lái)我有這個(gè)能力,能解決他人的問(wèn)題(知乎等平臺(tái)已經(jīng)被比我更專業(yè)的人占領(lǐng)了,這是個(gè)新地方)。

          * 關(guān)系需求:與家庭成員、朋友以及他人互動(dòng)的普通愿望,想make a difference。我的一個(gè)回答,可能剛好解決了某個(gè)朋友最近的疑惑,我很樂意分享給他,與他產(chǎn)生互動(dòng)和交集。

          * 自主需求:通過(guò)自己的技能、分享,可以幫助他人,這是一種符合價(jià)值觀的成就感。



          * 2、點(diǎn)數(shù)與排行榜

          點(diǎn)數(shù)就是平臺(tái)的社交貨幣,在how上就是金幣,可以兌換為現(xiàn)金

          引入好友排行榜元素,撬動(dòng)攀比心理:在排行榜中可顯示好友排名,以及通過(guò)自己邀請(qǐng)過(guò)來(lái)的好友名單。

          * 3、創(chuàng)造“類心流”體驗(yàn)

          心流是一種將個(gè)人精神完全投注在某種活動(dòng)上的感覺,它產(chǎn)生時(shí)同時(shí)會(huì)有高度的興奮及充實(shí)感。

          難度在如下黃色的3個(gè)區(qū)間時(shí),人會(huì)產(chǎn)生心流體驗(yàn)。



          how也在有意識(shí)引導(dǎo)用戶“心流”的部分:

          * 展示簡(jiǎn)單,向上滑動(dòng)交互體驗(yàn)感不錯(cuò)。很像平時(shí)貼在辦公桌周圍的便利貼,看著就有一種想完成后,把它撕掉的沖動(dòng)。

          * 難度:基本用戶都可以找到上述提及的心流區(qū)間,不同的問(wèn)題難度,對(duì)應(yīng)有不同的用戶回答能力。

          舉個(gè)不恰當(dāng)?shù)睦樱?jīng)常有人看到某人長(zhǎng)得不好看,甚至特別丑,就說(shuō):我天,這么丑怎么能有對(duì)象。然后看到他對(duì)象發(fā)現(xiàn),媽呀,兩人丑得特別搭。

          于是得出結(jié)論:什么樣的人都可以找到匹配自己的對(duì)象



          * 4、反饋:實(shí)時(shí)反饋

          不管是金幣獲得、邀請(qǐng)成功、好友掃碼成功、提現(xiàn)成功,系統(tǒng)都會(huì)提示,反饋感還是挺強(qiáng)的

          * 5、趣味性

          是否有趣這個(gè)問(wèn)題,本身就是仁者見仁智者見智。但How平臺(tái)至少有個(gè)天然優(yōu)勢(shì),雖然只是問(wèn)答形式,但問(wèn)題范圍不限制。

          你每刷一次,出現(xiàn)的求助者和問(wèn)題維度都不相同,有新鮮感。也總有你可以回答到的問(wèn)題。

          看著熱鬧,問(wèn)題也不少

          這么一分析,感覺這個(gè)平臺(tái)還挺棒的是不?一堆的游戲化元素設(shè)計(jì),朋友圈瘋狂刷屏,5毛錢一個(gè)新用戶,一堆裂變用戶拼命宣傳。一天流量有多大?流量是啥?是錢啊。

          如果平臺(tái)沒法律問(wèn)題不被封,融資馬上進(jìn)來(lái)了是不是?

          看著精彩,問(wèn)題也出在這里。

          第一:獎(jiǎng)勵(lì)會(huì)趕走樂趣,盲目地將外在動(dòng)機(jī)附著在內(nèi)在動(dòng)機(jī)上,不好

          心理學(xué)研究說(shuō)明,外部動(dòng)機(jī)會(huì)減弱、異化甚至摧毀內(nèi)部動(dòng)機(jī)。為了金錢、簽到、分享來(lái),而不是為了“想要分享、助人”的內(nèi)部動(dòng)機(jī)。

          平臺(tái)的問(wèn)答質(zhì)量怎么保證?沒有內(nèi)容,擼完羊毛,用戶拿了錢都走了怎么辦?

          如果定位是高質(zhì)量的問(wèn)答平臺(tái),外部獎(jiǎng)勵(lì)的目標(biāo),應(yīng)該本身就是玩家想要的東西(內(nèi)部動(dòng)機(jī)),使外部動(dòng)機(jī)與內(nèi)部動(dòng)機(jī)盡量保持一致。

          打個(gè)比方,要走質(zhì)量和內(nèi)容這塊,要有逼格,吸引高質(zhì)量用戶。金幣聽起來(lái)是不是俗了。



          我和我的好基友早上討論的時(shí)候,他已經(jīng)怕我學(xué)這樣的營(yíng)銷形式,誤入歧途,讓我清醒一點(diǎn)了。

          所以當(dāng)大家把一個(gè)知識(shí)類平臺(tái),當(dāng)做“擼羊毛”的時(shí)候,受到傷害的是誰(shuí)?

          還是平臺(tái)呀!別把自己的目標(biāo)用戶嚇跑,都進(jìn)來(lái)低質(zhì)量擼羊毛的人啊

          把金幣改為叫“知識(shí)點(diǎn)”行不行?是不是調(diào)性就好一些了?提現(xiàn)的時(shí)候,設(shè)計(jì)為“知識(shí)就是金錢”,是不是感覺不一樣了?

          另外,是不是一開始不要立刻用“金錢”來(lái)作為獎(jiǎng)勵(lì),可以先兌換的是“書籍”,各個(gè)知識(shí)平臺(tái)的“學(xué)習(xí)卡”,到一定的程度后,再進(jìn)行提現(xiàn)操作會(huì)更好一些?

          第二:它以后要干嘛?

          大批流量進(jìn)來(lái)之后,它是要做社交電商?還是問(wèn)答平臺(tái)?如何確保平臺(tái)的質(zhì)量,不讓其淪為低端的廣告賣貨平臺(tái)?

          就問(wèn)答平臺(tái)而言,體驗(yàn)并不好:裂變機(jī)制反饋相當(dāng)迅速,馬上提示我可以提現(xiàn)、有好友進(jìn)來(lái)了。

          可是核心問(wèn)答功能,審核時(shí)間非常長(zhǎng),感覺并沒有人在處理,用戶體驗(yàn)不好。

          所以,必須要先想一下自己的產(chǎn)品處于什么階段,游戲化也只不過(guò)一種為了達(dá)到目標(biāo)的手段和方法。

          不能只關(guān)注積分化獎(jiǎng)勵(lì)機(jī)制,這并不是游戲化的全部啊。

          不要把游戲化當(dāng)做一種廉價(jià)的營(yíng)銷技巧,它更強(qiáng)調(diào)用戶的情感體驗(yàn)和心理動(dòng)機(jī)。

          參考文章:

          http://www.woshipm.com/operate/703370.html

          http://www.woshipm.com/pmd/612672.html

          https://36kr.com/p/5054250.html?tar_foid=&from=singlemessage

          http://www.woshipm.com/pd/796189.html

          我是王木木,5年品牌營(yíng)銷人,曾服務(wù)于平安證券、全棉時(shí)代品牌部門。品牌營(yíng)銷、新媒體老司機(jī)。現(xiàn)為IP打造創(chuàng)業(yè)者,旗下首創(chuàng)運(yùn)動(dòng)酸奶項(xiàng)目正在運(yùn)營(yíng)中。

          目前正在進(jìn)行刻意練習(xí)踐行,100天堅(jiān)持就營(yíng)銷&品牌領(lǐng)域進(jìn)行持續(xù)輸出和精進(jìn)。

          如果你苦于找到品牌營(yíng)銷的方法論,或想進(jìn)階文案、交流創(chuàng)業(yè)心得,歡迎和我鏈接。


          主站蜘蛛池模板: 精品一区二区三区在线视频观看| 麻豆一区二区99久久久久| 久久久久人妻精品一区二区三区| 一级特黄性色生活片一区二区| 波多野结衣一区二区三区高清在线 | 国产一区二区三区免费观在线| 国产另类TS人妖一区二区 | 无码少妇一区二区三区| 日产精品久久久一区二区| 无码国产精品一区二区免费式直播| 亚洲欧美成人一区二区三区 | 国产一区内射最近更新| 一区二区三区免费在线观看| 亚洲一区二区三区香蕉| 精品国产乱子伦一区二区三区| 成人毛片一区二区| 日韩AV无码一区二区三区不卡毛片 | 亚洲狠狠狠一区二区三区| 福利国产微拍广场一区视频在线| av在线亚洲欧洲日产一区二区| 亚洲av鲁丝一区二区三区| 日韩一区二区免费视频| 亚洲中文字幕无码一区| 成人精品一区二区不卡视频| 国产乱码一区二区三区爽爽爽| 亲子乱av一区区三区40岁| 色妞AV永久一区二区国产AV| 精品人妻少妇一区二区三区不卡| 精品无码综合一区| 国产情侣一区二区| 亚洲不卡av不卡一区二区| 夜精品a一区二区三区| 久久精品免费一区二区三区 | 亚洲av成人一区二区三区在线观看| 亚洲av综合av一区| 日本一区午夜爱爱| 国产精品视频一区麻豆| 亚洲av无码一区二区乱子伦as | 国产高清精品一区| 无码一区18禁3D| 精品深夜AV无码一区二区|