Based on Wonderfall Dockerfiles
There are automated builds on Docker.
This project forked from wonderfall/dockerfiles
Dockerfiles
Home Page: https://hub.docker.com/u/hoellen
License: Creative Commons Zero v1.0 Universal
Based on Wonderfall Dockerfiles
There are automated builds on Docker.
Hi @hoellen,
after creating a new instance nextcloud isn't configured.
nextcloud_1 | Updating permissions in /data...
nextcloud_1 | Updating permissions in /config...
nextcloud_1 | Updating permissions in /apps2...
nextcloud_1 | Updating permissions in /var/log...
nextcloud_1 | Updating permissions in /php...
nextcloud_1 | Updating permissions in /nginx...
nextcloud_1 | Updating permissions in /tmp...
nextcloud_1 | Updating permissions in /etc/s6.d...
nextcloud_1 | Done updating permissions.
nextcloud_1 | Starting automatic configuration...
nextcloud_1 | Automatic configuration finished.
nextcloud-db_1 | 2020-01-27 10:38:47 10 [Warning] 'proxies_priv' entry '@% root@f67885bdea72' ignored in --skip-name-resolve mode.
nextcloud-db_1 | 2020-01-27 10:38:47+01:00 [Note] [Entrypoint]: Creating database nextcloud
nextcloud-db_1 | 2020-01-27 10:38:47+01:00 [Note] [Entrypoint]: Creating user nextcloud
nextcloud-db_1 | 2020-01-27 10:38:47+01:00 [Note] [Entrypoint]: Giving user nextcloud access to schema nextcloud
nextcloud_1 | Nextcloud is not installed - only a limited number of commands are available
nextcloud-db_1 | 2020-01-27 10:38:47 14 [Warning] 'proxies_priv' entry '@% root@f67885bdea72' ignored in --skip-name-resolve mode.
nextcloud-db_1 |
nextcloud-db_1 | 2020-01-27 10:38:47+01:00 [Note] [Entrypoint]: Stopping temporary server
nextcloud_1 |
nextcloud_1 |
nextcloud_1 | Command "app:disable" is not defined.
nextcloud_1 |
nextcloud_1 | Did you mean this?
nextcloud_1 | app:check-code
nextcloud_1 |
nextcloud_1 |
Running /usr/local/bin/setup.sh
again inside the container:
/nextcloud # /usr/local/bin/setup.sh
Starting automatic configuration...
Automatic configuration finished.
Nextcloud is not installed - only a limited number of commands are available
Command "app:disable" is not defined.
Do you want to run "app:check-code" instead? (yes/no) [no]:
> yes
Analysing /nextcloud/apps/firstrunwizard/templates/wizard.php
1 errors
line 34: OC_User - Static method of private class must not be called
Analysing /nextcloud/apps/firstrunwizard/lib/AppInfo/Application.php
2 errors
line 58: OC_Util - Static method of private class must not be called
line 76: OC_Util - Static method of private class must not be called
App is not compliant
Using b8f4bae0e6cd
and a21474b1fc1e
as image works as expected.
There is a new "high performance backend" for Nextcloud. It uses push to communicate with the Nextcloud clients. As we already use Nginx as a reverse proxy, it could be integrated/controlled very easily via docker env variables.
Should it be optional/default?
Useful links:
Users of the Docker image can leave a reaction or comment here, if they have specific suggestions/concerns.
Hey there,
is it possible to add an ENV to manipulate the nameservers?
Or do I need to expose the resolv.conf and overwrite it manually?
thx
I have a lot of "Trying to access array offset on value ..." in my Nextcloud logs, marked as level "Error". I searched Github a lot and and it seems to be some kind of Nextcloud ~bug when using PHP >7,2 (maybe only >7.3, not sure yet). See nextcloud/server#19010 (comment)
These "Trying to access array offset on value ..." are vary annoying as these messages spam the log file a lot. It seems to be some kind of upstream issue, that the developers won't fix in the near future - at least I interpreted their comments in this way.
It might be better to use PHP 7.2 oder 7.3 for your images, instead of 7.4, in order to get rid of these messages until a upstream fix is in place.
I'm assuming it does, but would just like to make sure. Thank you.
[mysqld]
...
transaction_isolation = READ-COMMITTED
binlog_format = ROW
...
As stated in #55 (comment), it would be nice to implement CI builds of the images via Github Actions.
While this is straight forward for repos with single purpose images, this is much more complicated when you maintain different tags (for example software versions) and even different purposes (multiple images in one repo, like nginx, nextcloud and so on).
@hoellen seems to be busy these days with other thinks, so it would be nice if some could draft an idea how this could be implemented or even better, draft a PR for this.
Hi, im running yout searx dockerfile, works perfect
But im new with this and i have some questions to run a public instance
Searx dockerfile runs nginx, filtron or morty? Or just run searx?
If not, what nginx docker file do u suggest to run it? I see two
Thank u soo much
Upon installing a new instance using DB_NAME
and DB_PASSWORD
, these config options are not set correctly and firstrunwizard is not disabled. it also seems, that Nextcloud is not installed:
/ # occ
Nextcloud is not installed - only a limited number of commands are available
Nextcloud 13.0.7
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--no-warnings Skip global warnings, show command output only
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
_completion BASH completion hook.
check check dependencies of the server environment
help Displays help for a command
list Lists commands
status show some status information
app
app:check-code check code to be compliant
integrity
integrity:check-app Check integrity of an app using a signature.
integrity:check-core Check integrity of core code using a signature.
integrity:sign-app Signs an app using a private key.
integrity:sign-core Sign core using a private key.
l10n
l10n:createjs Create javascript translation files for a given app
maintenance
maintenance:install install Nextcloud
the occ command here was executed on a freshly run container.
nextcloud install check throughs the topic in question
Fixed! Sorry! Can be closed!
i have set up the nextcloud docker container and when im trying to access nextcloud form a reverse proxy i'm not able to i put in the correct username and password and it just reloads the login screen. but i'm able to login when using the ip address and port number.
tldr; I've found the solution to the specific problem. It would be nice to gather more documentation to help other users.
I've been happily using hoellen/nextcloud with mariadb:10 since at least Version 19.
The only thing that bugs me is the uncertainty with switching versions. I've just yesterday upgraded from 20.0 to 21.0 (worked fine) and from 21.0 to 22.0 (Login worked but failed to show dashboard showing a error msg)
Running docker-compose exec --user 991 nextcloud php /nextcloud/occ update:check
returned some messages and the first error was
In ExceptionConverter.php line 114:
An exception occurred while executing a query: SQLSTATE[HY000]: General error: 4047 InnoDB refuses to write tables with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
Searching with google I've found https://www.reddit.com/r/NextCloud/comments/ncz7t6/error_when_upgrading/ with the mention to add innodb_read_only_compressed=OFF
to mysql.cnf
Which I translated with https://mariadb.com/kb/en/innodb-system-variables/ to the command-line argument --skip-innodb-read-only-compressed
So I've added the command to the docker-compose.yml
which now looks like this:
nc-db:
image: mariadb:10
hostname: nc-db
restart: always
volumes:
- ./nc-db:/var/lib/mysql
environment:
- MYSQL_ENV_STUFF=written_here
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --skip-innodb-read-only-compressed
Adding this command and calling docker-compose up -d
gave me working 22.0 (yay!).
Looking at the file I already had added the two other commands
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
probably (can't remember exactly) they where needed for the 19.0 to 20.0 upgrade.
Finding those commands did take some time and it would be nice for other users if there was a place to gather them.
Based on the information here
https://git.mdns.eu/nextcloud/passwords/-/wikis/Administrators/System-Requirements
the famous Passwords App in Nextcloud will only support php 8.0 from 2022 onward. The following hint appears for the application in Nextcloud:
"PHP 7.4.25 wird ab Version 2022.1.0 nicht mehr unterstützt. Bitte sieh dir unsere Systemanforderungen an."
In order to support the usage of the passwords app and allow a smooth transistion an update to php8.0 is requested.
Something went wrong with my update. The container is showing as healthy, but I noticed that I can't access the web app. Whenever I try to, this error is thrown in the log:
"user":"xyz","app":"PHP","method":"GET","url":"/apps/files/","message":"TypeError: Argument 1 passed to \"Symfony\\Component\\EventDispatcher\\EventDispatcherInterface::dispatch()\" must be an object, string given. at /nextcloud/3rdparty/symfony/event-dispatcher/EventDispatcher.php#63","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0","version":"18.0.8.2"}
I also fiddled with occ app:check-code and it looks like a lot of the core apps are failing:
docker exec -ti nextcloud occ app:check-code files
Analysing /nextcloud/apps/files/recentlist.php
2 errors
line 26: OCP\User - Static method of deprecated class must not be called
line 26: OCP\User::checkLoggedIn - Method of deprecated class must not be called
Analysing /nextcloud/apps/files/lib/Helper.php
1 errors
line 50: OC_Helper - Static method of private class must not be called
Analysing /nextcloud/apps/files/lib/BackgroundJob/ScanFiles.php
1 errors
line 87: OC_Util - Static method of private class must not be called
Analysing /nextcloud/apps/files/lib/Controller/ViewController.php
4 errors
line 117: OC_App - Static method of private class must not be called
line 139: OC_Helper - Static method of private class must not be called
line 242: OC_Helper - Static method of private class must not be called
line 246: OC_Helper - Static method of private class must not be called
Analysing /nextcloud/apps/files/ajax/download.php
3 errors
line 32: OCP\User - Static method of deprecated class must not be called
line 32: OCP\User::checkLoggedIn - Method of deprecated class must not be called
line 64: OC_Files - Static method of private class must not be called
Analysing /nextcloud/apps/files/ajax/list.php
5 errors
line 31: OC_JSON - Static method of deprecated class must not be called
line 83: OC_JSON - Static method of deprecated class must not be called
line 86: OC_JSON - Static method of deprecated class must not be called
line 94: OC_JSON - Static method of deprecated class must not be called
line 102: OC_JSON - Static method of deprecated class must not be called
Analysing /nextcloud/apps/files/appinfo/app.php
1 errors
line 41: OC_Helper - Static method of private class must not be called
Analysing /nextcloud/apps/files/templates/appnavigation.php
1 errors
line 86: == - is discouraged
Invalid appinfo.xml file found: Element 'settings': This element is not expected. Expected is one of ( contactsmenu, collaboration, sabre, public ).
App is not compliant
Hi Hoellen,
Thanks for nice build!
Is it possible for you to publish image for other architecture such armv7 for raspbarry pi which is very common use to build small NAS?
It may help with doing multiple architecture build:
https://www.docker.com/blog/getting-started-with-docker-for-arm-on-linux/
Regards
Hi,
would you mind to add argon2 support to your nginx-php image?
This will be used in nextcloud for password hashing.
If you want i can also provide a PR. (see Wonderfall/docker-nginx-php#4)
Thanks
The latest Docker Hub image for nextcloud is still 22.2.2 and not 22.2.3. It seems it did not get updated automatically as you did the changes in your Dockerfile. Could you please verify?
Hello,
currently I'm testing your searx dockerfile. In my case I configured a Tor socks5 Proxy for outgoing connections as I did in wonderfalls dockerfile on 0.14.0 but it doesn't work. It seems searx ignores this setting. Is there semething to configure for prxy usage?
I can't upgrade from nextcloud 19.0 to 20.0 .
The run.sh is always stuck with occ upgrade. When I step into the container with docker exec -it nextcloud sh
, I can't run occ, even without parameters. The script is just stuck.
Container startup can take a while. I thought the CHECK_PERMISSIONS environment variable controlled it, but I disabled that and startup seemed just as long. Is there any way to speed up or disable whatever integrity checks are happening? Thanks.
Following error is being logged:
Narrowing occurred during type inference. Please file a bug report on bugs.php.net at /nextcloud/lib/composer/composer/ClassLoader.php#444
It is being investigated here:
https://help.nextcloud.com/t/php-error-narrowing-occurred-during-type-inference/24010
and here:
https://bugs.php.net/bug.php?id=74980
we might need to downgrade the php version or just wait for backports for 7.2 compatibility from NC13
Hi,
if i want to install the INotify File Watcher app, i get the following missing dependency error:
Exception: App "INotify file watcher" cannot be installed because the following dependencies are not fulfilled: The library inotify is not available.
Could you please add this library to get the App working?
thank you!
sash
Hi, I'm running your NC 13 image, but when I try to upgrade to NC14-RC2, I get the following error:
server_1 | Checking for update of app activity in appstore
server_1 | An unhandled exception has been thrown:
server_1 | Error: Call to undefined method GuzzleHttp\Client::request() in /nextcloud/lib/private/Http/Client/Client.php:161
server_1 | Stack trace:
server_1 | #0 /nextcloud/lib/private/App/AppStore/Fetcher/Fetcher.php(106): OC\Http\Client\Client->get('https://apps.ne...', Array)
server_1 | #1 /nextcloud/lib/private/App/AppStore/Fetcher/AppFetcher.php(80): OC\App\AppStore\Fetcher\Fetcher->fetch('', '')
server_1 | #2 /nextcloud/lib/private/App/AppStore/Fetcher/Fetcher.php(170): OC\App\AppStore\Fetcher\AppFetcher->fetch('', '')
server_1 | #3 /nextcloud/lib/private/Installer.php(385): OC\App\AppStore\Fetcher\Fetcher->get()
server_1 | #4 /nextcloud/lib/private/Updater.php(445): OC\Installer->isUpdateAvailable('activity')
server_1 | #5 /nextcloud/lib/private/Updater.php(256): OC\Updater->upgradeAppStoreApps(Array)
server_1 | #6 /nextcloud/lib/private/Updater.php(126): OC\Updater->doUpgrade('14.0.0.18', '13.0.5.2')
server_1 | #7 /nextcloud/core/Command/Upgrade.php(262): OC\Updater->upgrade()
server_1 | #8 /nextcloud/3rdparty/symfony/console/Command/Command.php(251): OC\Core\Command\Upgrade->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
server_1 | #9 /nextcloud/3rdparty/symfony/console/Application.php(946): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
server_1 | #10 /nextcloud/3rdparty/symfony/console/Application.php(248): Symfony\Component\Console\Application->doRunCommand(Object(OC\Core\Command\Upgrade), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
server_1 | #11 /nextcloud/3rdparty/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
server_1 | #12 /nextcloud/lib/private/Console/Application.php(213): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
server_1 | #13 /nextcloud/console.php(96): OC\Console\Application->run()
server_1 | #14 /nextcloud/occ(11): require_once('/nextcloud/cons...')
Have you had a successful 13 -> 14 upgrade? Am I missing something?
P.S. Thanks very much for maintaining these images.
Sorry for disturb.
But i have problem when i download big file.
After few minutes, download is abord.
Maybe problem configuration on my file.
Can you help me ?
Best regard
Sorry again for my english.
I'm trying to spin up a new instance and am getting this error.
searx | Traceback (most recent call last):
searx | File "/usr/local/searx/searx/webapp.py", line 31, in <module>
searx | import requests
searx | ModuleNotFoundError: No module named 'requests'
searx exited with code 1
Hello and sorry for my english.
But, i have an problem.
When i update the docker, i need reinstall all app.
It's normal ?
Best regards
Hi,
when using the rainloop-plugin for webmail, nextcloud is stalling totaly because there is not enough php-processes to handle all the requests.
[pool www] server reached pm.max_children setting (15), consider raising it
and
[pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 0 idle, and 8 total children
I set locally those variables (php-fpm.conf) to a higher value and my nextcloud-instance is stable while using the rainloop-plugin.
pm.max_children = 15 -> 50 pm.start_servers = 2->5 pm.min_spare_servers = 1->2 pm.max_spare_servers = 6->16
Of course other instances may not need that change or may not have that much ram and should stay with a lower value. So this should be controlled via an ENV-variable, or some other override mechanism.
What do You think about tweaking these values?
HI,
there is a popup which tells me, that there are problems with the code integrity.
Does anybody have the same problem? Any tips to solve this?
Thx
Hi,
after pulling the 21.0
tag:
nextcloud_1 | Permissions in /data are correct.
nextcloud_1 | Permissions in /config are correct.
nextcloud_1 | Permissions in /apps2 are correct.
nextcloud_1 | Updating permissions in /var/log...
nextcloud_1 | Updating permissions in /php...
nextcloud_1 | Updating permissions in /nginx...
nextcloud_1 | Updating permissions in /tmp...
nextcloud_1 | Updating permissions in /etc/s6.d...
nextcloud_1 | Done updating permissions.
nextcloud_1 | Check for UserID 1000
nextcloud_1 | Creating user nextcloud with UID=1000 and GID=1000.
nextcloud_1 |
nextcloud_1 | Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 20480 bytes) in /nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php on line 133
nextcloud_1 |
nextcloud_1 | Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 266240 bytes) in /nextcloud/lib/private/AppFramework/Utility/SimpleContainer.php on line 133
Now the web interface is waiting for starting the update.
environment:
- UID=1000
- GID=1000
- UPLOAD_MAX_SIZE=10G
- APC_SHM_SIZE=128M
- OPCACHE_MEM_SIZE=128
- CRON_PERIOD=15m
- TZ=Europe/Berlin
Many thanks, Jan.
Hi Hoellen,
Since the last image update, nextcloud is KO with the following error:
An unhandled exception has been thrown: Exception: Environment not properly prepared. in /nextcloud/lib/private/Console/Application.php:148 Stack trace: #0 /nextcloud/console.php(89): OC\Console\Application->loadCommands(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #1 /nextcloud/occ(11): require_once('/nextcloud/cons...') s6-svscan: fatal: unable to mkfifo .s6-svscan/control: Permission denied #2 {main}Skip checking permissions Cannot write into "config" directory This can usually be fixed by giving the webserver write access to the config directory. See https://docs.nextcloud.com/server/13/go.php?to=admin-dir_permissions
Can you have a look ?
Regards,
z.
Hi,
As per https://help.nextcloud.com/t/real-ip-in-docker-behind-nginx-reverse-proxy/43917 the IP in nextcloud log is the IP of the docker rather that the original remote IP.
{"reqId":"MMdMqOvTwJ04LKO14hCj","level":2,"time":"2019-03-03 15:21:21","remoteAddr":"172.18.0.1","user":"--","app":"core","method":"POST","url":"\/login?redirect_url=\/settings\/user","message":"Login failed: 'sadf' (Remote IP: '172.18.0.1')","userAgent":"Mozilla\/5.0 (X11; Linux x86_64; rv:65.0) Gecko\/20100101 Firefox\/65.0","version":"15.0.5.3"}
There is a proposed solution for apache web server used in the official docker, anyone know how to fix that with nginx like in hoellen/nexcloud docker?
BTW, I use nginx reverse-proxy on host with
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8010;
proxy_buffering off;
proxy_read_timeout 360s;
proxy_redirect default;
}
Not updated for over a year (so certainly has OS vulnerabilities): https://hub.docker.com/r/hoellen/privatebin/tags
Also as for the app you use an outdated PrivateBin version and not PrivateBin v1.4, which e.g. addressed a vulnerability in GHSA-cqcc-mm6x-vmvw.
Seems this is triggered by nextcloud/server#26457
Hi there,
your lastest nextcloud 18 image is affected by nextcloud/server#20622.
Any chance to work around this issue until nextcloud fixes this?
Thanks, Jan.
Hi,
i'm curious if it makes sense to add the www-data(991) user to the image.
As this user (or better this id) is used for the permissions for the folders and also for the config.
What do you think?
Best regards
eloo
The actual image seems to miss the PHP zip module:
nextcloud_1 | PHP Warning: PHP Startup: Unable to load dynamic library 'zip.so' (tried: /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so (Error loading shared library libzip.so.5: No such file or directory (needed by /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so)), /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so.so (Error loading shared library /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so.so: No such file or directory)) in Unknown on line 0
nextcloud_1 | PHP module zip not installed.
nextcloud_1 | Please ask your server administrator to install the module.
nextcloud_1 |
nextcloud_1 | An unhandled exception has been thrown:
nextcloud_1 | Exception: Environment not properly prepared. in /nextcloud/lib/private/Console/Application.php:166
nextcloud_1 | Stack trace:
nextcloud_1 | #0 /nextcloud/console.php(95): OC\Console\Application->loadCommands(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
nextcloud_1 | #1 /nextcloud/occ(11): require_once('/nextcloud/cons...')
nextcloud_1 | PHP Warning: PHP Startup: Unable to load dynamic library 'zip.so' (tried: /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so (Error loading shared library libzip.so.5: No such file or directory (needed by /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so)), /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so.so (Error loading shared library /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so.so: No such file or directory)) in Unknown on line 0
nextcloud_1 | [25-Dec-2018 17:11:31] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library 'zip.so' (tried: /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so (Error loading shared library libzip.so.5: No such file or directory (needed by /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so)), /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so.so (Error loading shared library /usr/lib/php/extensions/no-debug-non-zts-20180731/zip.so.so: No such file or directory)) in Unknown on line 0
nextcloud_1 | #2 {main}PHP module zip not installed.
nextcloud_1 | Please ask your server administrator to install the module.
Strangely, I'm now getting an error about X-Frame-Options after the addition of that setting to the image. I updated my container this morning.
The error is:
The "X-Frame-Options" HTTP header is not set to "SAMEORIGIN". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.