En fait, il y avait une histoire de pensées et d'erreurs dans cet article, mais je l'ai postée ici parce que j'ai fini par réessayer.
yum update
pour le maintenir à jourIl a été réalisé en référence à Créer automatiquement des sites de documents à l'aide de MkDocs.
Installez Python Package Management pip.
J'ai lancé python get-pip.py
au début, mais cela n'a pas fonctionné du tout. .. ..
Par conséquent, j'ai décidé d'installer python-pip
sur le site officiel.
$ python --version
Python 2.7.10
$ sudo yum install python-pip
Loaded plugins: priorities, update-motd, upgrade-helper
Resolving Dependencies
--> Running transaction check
---> Package python26-pip.noarch 0:6.1.1-1.21.amzn1 will be installed
--> Processing Dependency: python(abi) = 2.6 for package: python26-pip-6.1.1-1.21.amzn1.noarch
--> Processing Dependency: python26(dist-packages) for package: python26-pip-6.1.1-1.21.amzn1.noarch
--> Processing Dependency: python26-setuptools for package: python26-pip-6.1.1-1.21.amzn1.noarch
--> Processing Dependency: /usr/bin/python2.6 for package: python26-pip-6.1.1-1.21.amzn1.noarch
--> Processing Dependency: python26-backports-ssl_match_hostname for package: python26-pip-6.1.1-1.21.amzn1.noarch
--> Processing Dependency: python26(alternatives) for package: python26-pip-6.1.1-1.21.amzn1.noarch
--> Running transaction check
---> Package python26.x86_64 0:2.6.9-2.84.amzn1 will be installed
--> Processing Dependency: libpython2.6.so.1.0()(64bit) for package: python26-2.6.9-2.84.amzn1.x86_64
---> Package python26-backports-ssl_match_hostname.noarch 0:3.4.0.2-1.12.amzn1 will be installed
--> Processing Dependency: python26-backports for package: python26-backports-ssl_match_hostname-3.4.0.2-1.12.amzn1.noarch
---> Package python26-setuptools.noarch 0:12.2-1.30.amzn1 will be installed
--> Running transaction check
---> Package python26-backports.x86_64 0:1.0-3.14.amzn1 will be installed
---> Package python26-libs.x86_64 0:2.6.9-2.84.amzn1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=================================================================================================================================
Package Arch Version Repository Size
=================================================================================================================================
Installing:
python26-pip noarch 6.1.1-1.21.amzn1 amzn-main 1.9 M
Installing for dependencies:
python26 x86_64 2.6.9-2.84.amzn1 amzn-main 5.8 M
python26-backports x86_64 1.0-3.14.amzn1 amzn-main 5.2 k
python26-backports-ssl_match_hostname noarch 3.4.0.2-1.12.amzn1 amzn-main 12 k
python26-libs x86_64 2.6.9-2.84.amzn1 amzn-main 696 k
python26-setuptools noarch 12.2-1.30.amzn1 amzn-main 582 k
Transaction Summary
=================================================================================================================================
Install 1 Package (+5 Dependent packages)
Total download size: 8.9 M
Installed size: 29 M
Is this ok [y/d/N]: y
Downloading packages:
(1/6): python26-2.6.9-2.84.amzn1.x86_64.rpm | 5.8 MB 00:00
(2/6): python26-backports-1.0-3.14.amzn1.x86_64.rpm | 5.2 kB 00:00
(3/6): python26-backports-ssl_match_hostname-3.4.0.2-1.12.amzn1.noarch.rpm | 12 kB 00:00
(4/6): python26-libs-2.6.9-2.84.amzn1.x86_64.rpm | 696 kB 00:00
(5/6): python26-pip-6.1.1-1.21.amzn1.noarch.rpm | 1.9 MB 00:00
(6/6): python26-setuptools-12.2-1.30.amzn1.noarch.rpm | 582 kB 00:00
---------------------------------------------------------------------------------------------------------------------------------
Total 14 MB/s | 8.9 MB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : python26-libs-2.6.9-2.84.amzn1.x86_64 1/6
Installing : python26-2.6.9-2.84.amzn1.x86_64 2/6
Installing : python26-backports-1.0-3.14.amzn1.x86_64 3/6
Installing : python26-backports-ssl_match_hostname-3.4.0.2-1.12.amzn1.noarch 4/6
Installing : python26-setuptools-12.2-1.30.amzn1.noarch 5/6
Installing : python26-pip-6.1.1-1.21.amzn1.noarch 6/6
Verifying : python26-2.6.9-2.84.amzn1.x86_64 1/6
Verifying : python26-setuptools-12.2-1.30.amzn1.noarch 2/6
Verifying : python26-libs-2.6.9-2.84.amzn1.x86_64 3/6
Verifying : python26-pip-6.1.1-1.21.amzn1.noarch 4/6
Verifying : python26-backports-ssl_match_hostname-3.4.0.2-1.12.amzn1.noarch 5/6
Verifying : python26-backports-1.0-3.14.amzn1.x86_64 6/6
Installed:
python26-pip.noarch 0:6.1.1-1.21.amzn1
Dependency Installed:
python26.x86_64 0:2.6.9-2.84.amzn1 python26-backports.x86_64 0:1.0-3.14.amzn1
python26-backports-ssl_match_hostname.noarch 0:3.4.0.2-1.12.amzn1 python26-libs.x86_64 0:2.6.9-2.84.amzn1
python26-setuptools.noarch 0:12.2-1.30.amzn1
Complete!
Je suis entré en douceur! !!
$ sudo pip install mkdocs
~~ Omis ~~
Running setup.py install for Markdown
Running setup.py install for tornado
Running setup.py install for click
Running setup.py install for mkdocs-bootswatch
Running setup.py install for mkdocs-bootstrap
Successfully installed Markdown-2.6.6 backports-abc-0.4 certifi-2016.2.28 click-6.6 livereload-2.4.1 mkdocs-0.15.3 mkdocs-bootstrap-0.1.1 mkdocs-bootswatch-0.4.0 singledispatch-3.4.0.3 tornado-4.3
Est entré! !! En fait, je l'ai exécuté sans sudo au début, mais j'étais en colère contre ʻerror: could not create '/ usr / local / lib / python2.7 / site-packages / markdown': Permission refusée`, donc je l'ai exécuté avec sudo. .. Vérifions immédiatement la version de mkdocs.
$ mkdocs --version
mkdocs, version 0.15.3
Bonne chance! !!
$ mkdocs new sample && cd sample
INFO - Creating project directory: sample
INFO - Writing config file: sample/mkdocs.yml
INFO - Writing initial docs: sample/docs/index.md
$ ls -l
total 8
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 8 06:29 docs
-rw-rw-r-- 1 ec2-user ec2-user 19 Apr 8 06:29 mkdocs.yml
Normalement, le groupe de sécurité par défaut EC2 autorise uniquement l'accès au port SSH 22. Ajoutez donc une règle TCP personnalisée comme ci-dessous pour accéder au port standard 8000 de mkdocs.
$ mkdocs serve -a 0.0.0.0:8000
INFO - Building documentation...
INFO - Cleaning site directory
[I 160408 06:55:54 server:281] Serving on http://0.0.0.0:8000
[I 160408 06:55:54 handlers:59] Start watching changes
[I 160408 06:55:54 handlers:61] Start detecting changes
Faites-en l'adresse IP globale attribuée à votre EC2 et vérifiez-la depuis le navigateur.
http://{Your Global Public IP}:8000/
Vous pouvez désormais parcourir le contenu du projet Exemple en tant que site Web! !!
Ce qui précède dépend d'EC2 car mkdocs sur EC2 agit comme un serveur Web. mkdocs a une fonction de création de contenu statique, alors essayons-le.
$ mkdocs build
INFO - Building documentation to directory: /home/ec2-user/sample/site
$ cd site && ls -l
total 64
-rw-r--r-- 1 ec2-user ec2-user 3823 Apr 8 07:05 404.html
-rw-r--r-- 1 ec2-user ec2-user 4720 Apr 8 07:05 base.html
-rw-r--r-- 1 ec2-user ec2-user 189 Apr 8 07:05 content.html
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 8 07:05 css
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 8 07:05 fonts
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 8 07:05 img
-rw-rw-r-- 1 ec2-user ec2-user 4816 Apr 8 07:05 index.html
-rw-r--r-- 1 ec2-user ec2-user 0 Apr 8 07:05 __init__.py
-rw-r--r-- 1 ec2-user ec2-user 148 Apr 8 07:05 __init__.pyc
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 8 07:05 js
drwxrwxr-x 3 ec2-user ec2-user 4096 Apr 8 07:05 mkdocs
-rw-r--r-- 1 ec2-user ec2-user 3359 Apr 8 07:05 nav.html
-rw-r--r-- 1 ec2-user ec2-user 418 Apr 8 07:05 nav-sub.html
-rw-rw-r-- 1 ec2-user ec2-user 235 Apr 8 07:05 sitemap.xml
-rw-r--r-- 1 ec2-user ec2-user 436 Apr 8 07:05 toc.html
Comme mentionné ci-dessus, non seulement le fichier html, mais également le site Web complet a été produit.
Comme c'est une bonne idée, je vais télécharger la sortie définie ci-dessus sur S3 et parcourir le site avec uniquement du contenu statique. Pour les paramètres de base, S3 a été défini en référence au site Web officiel AWS.
Définissez ʻindex.htmlcomme nom de document d'index sur S3. Téléchargez le fichier ci-dessus sur S3. En fait, il est plus intelligent de synchroniser EC2 et S3 avec
lsyncd` etc., mais cette fois je l'ai téléchargé manuellement.
Si vous voulez le faire, [cette zone](http://dev.classmethod.jp/cloud/aws/file-upload-to-s3-from-ec2-using-sftp/#install-lsyncd-on-ec2-and-setting- Veuillez vous référer à l'environnement).
De plus, si vous venez de télécharger sur S3, vous serez béni avec ** 403 Forbidden **, alors définissez l'autorité sur S3 en vous référant à l'article suivant. Hébergez un petit site statique avec Amazon S3!
Cette fois, la stratégie créée et définie par AWS Policy Generator est la suivante.
{
"Id": "Policy<UNIQUE_ID>",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "<UNIQUE_ID>",
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::mkdocstest/*",
"Principal": "*"
}
]
}
Le nom du bucket est «mkdocstest».
Et lorsque vous accédez au point de terminaison S3 ...
http://mkdocstest.s3-website-ap-northeast-1.amazonaws.com/
C'est sorti! !!
python-pip
depuis yum pour la compatibilité avec Amazon Linux.Pour être honnête, même si vous ne naviguez pas avec S3, il semble que la fonction de serveur Web de mkdocs soit suffisante, mais je pense que je devrais la juger en fonction des conditions de fonctionnement. Malgré tout, j'ai eu l'impression d'être troublé par l'installation sur Amazon Linux plutôt que par les mkdocs eux-mêmes. De plus, dans le système AWS, il est important de disposer d'autorités telles que les groupes de sécurité, il y a donc de nombreuses parties qui sont faciles si vous le connaissez.
c'est tout! !! (Ah, c'était rafraîchissant)
Recommended Posts